Python Memorandum

Standard

Ende

sys.exit()  #Löst eine System-Exit-Ausnahme aus
sys.exit('error!') #Spuckt eine Abbruchzeichenfolge an stderr und löst eine SystemExit-Ausnahme mit Status 1 aus
os._exit(n) #Prozess mit Status n beenden Keine Ausnahme auslösen
raise exception #Eine Ausnahme auslösen

Pfad

#Pfad bei der Ausführung des Skripts
__file__    #Relativer Pfad der Skriptdatei selbst
os.getcwd() #Absoluter Pfad des aktuellen Verzeichnisses
sys._getframe().f_code.co_name  #Name der ausgeführten Funktion/Methodenname
os.path.dirname(os.path.abspath(__file__)) #Absoluter Pfad zum übergeordneten Verzeichnis des Skripts (weil ich es oft benutze)
#Siehe Pfad
os.path.dirname(filepath)  #Dateipfad → Ein Verzeichnispfad nach oben
os.path.basename(filepath) #Dateipfad → Dateiname
os.path.abspath(filepath)  #Relativer Pfad der Datei → Absoluter Pfad der Datei
os.path.exists(filepath)   #Überprüfung der Dateiexistenz → Richtig oder falsch
os.path.isfile(filepath)   #Überprüfen Sie, ob es sich um eine Datei handelt → Richtig oder Falsch
os.path.isdir(dirpath)     #Überprüfen Sie, ob es sich um ein Verzeichnis handelt → Richtig oder Falsch
os.wark(dirpath)           #Das Ergebnis der Befolgung der Untergebenen wie der Befehl find von Linux[(path, [dir,...], [file,...]),...]Form von
#Dateivorgang
os.mkdir(dirname)          #Verzeichnis erstellen
os.makedirs(dirpath)       #Verzeichnis erstellen(mkdir -Gleich wie p)
shutil.copyfile(src, dst)  #Datei → Datei kopieren
shutil.copy(src, dst)      #Datei-> Verzeichnis kopieren
shutil.copytree(src, dst)  #Verzeichnis → Verzeichnis kopieren
os.remove(filepath)        #Datei löschen
os.rmdir(dirpath)          #Leeres Verzeichnis löschen
os.removedirs(dirpath)     #Verzeichnisbaum löschen (Fehler, wenn eine Datei vorhanden ist)
shutil.rmtree(dirpath)     #Verzeichnisbaum löschen (löschen, auch wenn eine Datei vorhanden ist)

Datei lesen / schreiben

#Neue Notation (automatisch schließen)
with open(filename, 'w') as file:
    file.write(str)
#Alte Notation
file = open(filename, 'w')
try:
    file.write(str)
finally:
    file.close()
#Zeichencode-Spezifikation
with codecs.open(filename, 'w', 'shift_jis') as file:
    file.write(str)

conf-Dateioperation

[section]
option = value

↑ ist ↓

config['section']['option'] = 'value'

Es arbeitet grundsätzlich nach dem Wörterbuchtyp, aber die folgenden sind unterschiedlich. Die Option + unterscheidet nicht zwischen Groß- und Kleinschreibung

Rekonstruieren Sie es als Wörterbuchtyp mit "{key: {k: v für k, v in value.items ()} für key, value in config.items ()}".

import configparser
config = configparser.ConfigParser()
config['DEFAULT'] = {'ServerAliveInterval': '45',  #Element im Abschnitt STANDARD festlegen
                     'Compression': 'yes',
                     'CompressionLevel': '9'}
with open('example.ini', 'w') as configfile:
    config.write(configfile)
#lesen
config = configparser.ConfigParser()
config.read([os.path.dirname(__file__) + '/' + INI_FILE], encoding='utf-8')
userid = config['DEFAULT']['userid']

SQLite3

#Einsatzbereit
import sqlite3
conn = sqlite3.connect('example.sqlite3')
c = conn.cursor()
#SQL-Ausgabe
c.execute("""INSERT INTO stocks
          VALUES ('2006-01-05','BUY','RHAT',100,35.14);""")
##Variablen in Strings einbetten Verwenden Sie Tapples zum Einbetten
t = ('RHAT',)
c.execute('SELECT * FROM stocks WHERE symbol=?', t)
##Betten Sie mehrere Taples ein
purchases = [('2006-03-28', 'BUY', 'IBM', 1000, 45.00),
             ('2006-04-05', 'BUY', 'MSFT', 1000, 72.00),
             ('2006-04-06', 'SELL', 'IBM', 500, 53.00),
            ]
c.executemany('INSERT INTO stocks VALUES (?,?,?,?,?)', purchases)
#4 SELECT-Ergebnisreferenzmethoden
for row in c.execute('SELECT * FROM table'): #Als Iterator herausnehmen
    print(row)
row = c.fetchone() #Eine Zeile extrahieren Wenn keine zu extrahierende Zeile vorhanden ist, wird Keine zurückgegeben.
some_rows = fetchmany(size=cursor.arraysize) #Extrahieren Sie die angegebene Anzahl von Zeilen
all_rows = fetchall() #Extrahieren Sie alle Zeilen

Bonus:

#Überprüfung der Tabellenexistenz
SELECT COUNT(*) FROM sqlite_master WHERE type='table' AND name=table;
#Tabelle erstellen
CREATE TABLE table(column1 [datatype1] [,column2 [datatype2] ...]);
#Daten hinzufügen
INSERT INTO t (columname1,column2…) VALUES (value1,value2…);
#Datenaktualisierung
UPDATE table SET column::=value [,...] [WHERE conditions];
#Suche
SELECT column [,...] FROM table [WHERE conditions];
#Tabelle löschen
DROP TABLE table;

phantomJS with selenium

from selenium import webdriver
driver = webdriver.PhantomJS() #PhantomJS-Treibererstellung
driver = webdriver.PhantomJS(service_log_path=log_name) #Protokolldateispezifikation(default: './ghostdriver.log')
driver = webdriver.PhantomJS(service_log_path=os.ttyname(sys.stdout.fileno()))  #Protokoll zur Standardausgabe
driver = webdriver.PhantomJS(service_log_path=os.path.devnull) #Log/dev/Auf null verwerfen
driver.set_window_size(1024, 768)
driver.get('https://google.com/')
driver.save_screenshot('google.png')
find_element_by_id()
find_element_by_name()
find_element_by_xpath()
find_element_by_link_text()
find_element_by_partial_link_text() # <a>Geben Sie den eingeschlossenen Text an
find_element_by_tag_name()          #Geben Sie den Namen des HTML-Tags an
find_element_by_class_name()
find_element_by_css_selector()

Referenz

8. Fehler und Ausnahmen - Python 3.5.1-Dokumentation 12.6. Sqlite3 - DB-API 2.0-Schnittstelle für SQLite-Datenbank - Python 3.5.1-Dokumentation 14.2. Configparser - Konfigurationsdatei-Parser - Python 3.5.1-Dokumentation 16.1. Os - Verschiedene Betriebssystemschnittstellen - Python 3.5.1-Dokumentation 29.1. Sys - Systemparameter und -funktionen - Python 3.5.1-Dokumentation xxx Format spezielle Methode, spezielles Feld »Python Snippets

Recommended Posts

Python-Memorandum
Python-Memorandum 2
Python-Memorandum
Python Memorandum
Python-Memorandum
Python Memorandum
Python-Memorandum
Python-Grundmemorandum
Python Pathlib Memorandum
Python-Memorandum (Algorithmus)
Python-Memorandum [Links]
Python-Memorandum-Nummerierungsvariablen
Python Memorandum (sequentielle Aktualisierung)
Python
Python Basic Memorandum Teil 2
Memorandum @ Python ODER Seminar
Python Memorandum Super Basic
Python-Anfänger-Memorandum-Funktion
Memorandum @ Python ODER Seminar: matplotlib
[Python] Memorandum zur Vermeidung von SQLAlchemy-Fehlern
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
Kafka Python
Linux Memorandum
Python-Grundlagen ⑤
Python-Zusammenfassung
Eingebaute Python
ABC-Memorandum [ABC159 C - Maximales Volumen] (Python)
jinja2 Memorandum
Python-Einschlussnotation
Python-Technik
Python pywin32 (win32com) Excel-Memorandum
Python studieren
Python 2.7 Countdown
Django Memorandum
Python FlowFishMaster
Python-Dienst
Python-Tipps
Python-Funktion ①
Python-Grundlagen
Python-Memo
Ufo-> Python (3)