Python-Memorandum 2

Ich habe schnell ein Tool mit Python erstellt, also ein Memorandum. Denken Sie an die wichtigen Punkte, da die Quelle die des Unternehmens ist

Verzeichnis rekursive Verarbeitung

Funktion zum Abrufen aller Dateien

Hier war sehr hilfreich.

def get_all_files(directory):
    for path, dirs, files in os.walk(directory):
        for file in files:
            yield os.path.join(path, file)

Funktion zum Abrufen aller Verzeichnisse

Ausgeliehen von hier.

def get_all_files(directory):
    for path, dirs, files in os.walk(directory):
        yield path

Funktion zum Abrufen aller Verzeichnisse und Dateien

Ausgeliehen von hier.

def get_all_files(directory):
    for path, dirs, files in os.walk(directory):
        yield path
        for file in files:
            yield os.path.join(path, file)

Wann zu verwenden

for file in get_all_files('/tmp/test'):
    print file

Über den Ertrag

Hier war sehr hilfreich. Einfach ausgedrückt scheint es, dass der Inhalt des Prozesses ohne erneute Ausführung belassen werden kann. Sie können es also in einer Schleife drehen oder mit next () abrufen. Mit anderen Worten

def test():
	yield 'a'
	yield 'b'
	yield 'c'

for i in test():
	print i

Wenn du rennst

a
b
c

Wird ausgegeben.

Dateiverarbeitung

Rufen Sie den Dateinamen aus dem vollständigen Pfad ab

Ich benutze das oft

file_name = os.path.basename(file)

Teilen Sie die Erweiterung und andere vom vollständigen Pfad ab

Ich wollte die Erweiterung sehen

file_title, file_ext = os.path.splitext(file_name)

Öffnen Sie die Datei in UTF-8 und lesen Sie alle Zeilen

Sie müssen beim Öffnen mit UTF-8 auf Unicode achten

f = codecs.open(file, 'r', 'utf-8')
list = f.readlines()
f.close()

Öffnen Sie die Datei in UTF-8 und schreiben Sie

Wenn die Datei nicht vorhanden ist, erstellen Sie sie. Wenn der String ein Unicode ist, kann er auf Japanisch geschrieben werden. Verwenden Sie beim Drucken print (string.encode ('utf-8')). Wenn Sie \ n nicht hinzufügen, wird die Zeile nicht unterbrochen, wenn Sie sie mit CRLF-Zeilenumbruch öffnen.

result = codecs.open(outfile, 'a', 'utf-8')
result.write(format("string --> %s\n" % string))
result.close()

Beim Vergleich der gelesenen Dateien müssen Sie den Zeichencode vereinheitlichen Ich war ziemlich süchtig danach. .. ..

Zeichenfolgenvergleich

Gibt an, ob eine Zeichenfolge enthalten ist

line = "1abcdefg23456789"
target_string = "1a"

if (target_string in line):

Als die Anzahl der Prozesse zunahm, hatte ich manchmal das Gefühl, dass es Python war. Python ist gut zum schnellen Schreiben. Ich mag das.

Recommended Posts

Python-Memorandum
Python-Memorandum 2
Python-Memorandum
Python Memorandum
Python Memorandum
Python-Memorandum
Python Memorandum
Python-Memorandum
Python-Grundmemorandum
Python Pathlib Memorandum
Python-Memorandum (Algorithmus)
Python-Memorandum [Links]
Python Memorandum (sequentielle Aktualisierung)
Python
Python-Memorandum (persönliches Lesezeichen)
Python Basic Memorandum Teil 2
Memorandum @ Python ODER Seminar
Python Memorandum Super Basic
Cisco Memorandum _ Eingabekonfiguration mit Python
ABC-Memorandum [ABC163 C --managementr] (Python)
Python-Anfänger-Memorandum-Funktion
Memorandum @ Python ODER Seminar: matplotlib
[Python] Memorandum zur Vermeidung von SQLAlchemy-Fehlern
Memorandum über Korrelation [Python]
Memorandum @ Python ODER Seminar: Pulp
Ein Memorandum über den Python-Mock
Memorandum @ Python ODER Seminar: Pandas
[Python] Memorandum über zufällige Generationen
Memorandum @ Python ODER Seminar: Scikit-Learn
Python-Memorandum zur parallelen / asynchronen Ausführung
Matplotlib Memorandum
Linux Memorandum
Python-Grundlagen ⑤
Python-Zusammenfassung
Eingebaute Python
ABC-Memorandum [ABC159 C - Maximales Volumen] (Python)
jinja2 Memorandum
Python-Einschlussnotation
Python-Technik
Python studieren
Python 2.7 Countdown
Django Memorandum
Python FlowFishMaster
Python-Dienst
Python-Tipps
Python-Funktion ①
Python-Grundlagen