Python-Memorandum

Ich hatte die Möglichkeit, Python zu verwenden, daher werde ich ein Memorandum schreiben. Es kann schwierig sein zu lesen, weil ich es mir notiert habe. ..

Verwendung von Config

Config verwendet ConfigParser.

config_path = "./setting.conf"
file = ConfigParser.SafeConfigParser()
file.read(config_path)
conf = init_context.InitContext(file)

Die Konfiguration ist so geschrieben

[host_settings]
host = 192.168.10.10
port = 8080

Beim Benutzen Geben Sie dies wie folgt an

conf.get("host_settings", "host")

Optionsspezifikation zur Laufzeit

Es ist praktisch, OptParser für den optionalen Parser zu verwenden

parser = OptionParser()
parser.usage = "usage: %prog [options] arg1 arg2"
parser.description = "Schreibe eine Beschreibung"
parser.add_option("-f", action="store", type="string", dest="file",help="Erklärung beim Lesen der Hilfe")
parser.add_option("-d", action="store_true", dest="debug",help="debug mode", default=False)

Wenn du schreibst Mit Option "-f" Das durch die Option -f angegebene Argument Beim Analysieren kann es mit der durch dest angegebenen Bezeichnerdatei verwendet werden.

Bei Verwendung der Option "-d" Wenn action = "store_true" angegeben ist, wird True in dest eingegeben, wenn die Option angegeben wird. Standard ist der Standardwert, wenn keine Option angegeben ist

Die von der Hilfe angegebene wird angezeigt, wenn sie mit "-h" ausgeführt wird.

Verwenden Sie die Optionsanalyse wie folgt

(options, args) = parser.parse_args(sys.argv)
print options.file

Überprüfung der Dateiexistenz

Überprüfen Sie die Existenz vor dem Lesen.

os.path.exists(file_path) 

CSV-Datei lesen

f = open(file_path, 'rb')
reader = csv.reader(f)
for Data in reader:
    print Data[0]
f.close

Listenmemo

list.append

Verwendung des Rückgabewert-Memos

Sie können auch zwei Rückgabewerte haben. user, name = method()

Einzeiler

[method() for user in users if user.name == "yuta"]

Wenn der Name des Benutzerelements in Benutzern yuta ist, können Sie method aufrufen. Mit diesem

for user in users :
	if user.name == "yuta":
		method()

Verwendung von Request

url = "http://localhost:8080/target"
body = "json or xml"
	
response = requests.post(url, data=body)

Ich kann eine Anfrage stellen

Bei Verwendung von XML

import xml.etree.ElementTree as ET
element_tree  = ET.fromstring(xml_text)            #Dies ist die Route. Dies konvertiert eine Zeichenfolge in ein XML-Element
code = element_tree.get("code")                    #Nach der Konvertierung können Sie den Wert mit der Funktion element abrufen. In diesem Fall der Wert des Codeattributs
name = element_tree.find("name_list").get("name")  #In diesem Fall nama_Der Wert des Namensattributs des Listenelements
Body = ET.Element("root")
Body.set("name", "yuta")                               #Legen Sie den Wert des Namensattributs des Stammelements fest"yuta"Fügen Sie mit hinzu
subbody = ET.SubElement(Body, "age")                   #Alterselement zum Stammelement hinzugefügt. Machen Sie dieses Objekt zu einem Unterkörper.
subbody.text = 29                                      #Der Text des Unterkörperobjekts wird als Wert festgelegt
ET.SubElement(Body, "address", {"city": "tokyo"})    #Wenn Sie dem Stammobjekt weitere hinzufügen möchten, tun Sie dies. Wenn Sie weitere hinzufügen, fügen Sie das Stadtattribut und den Wert Saitama hinzu

Wenn Sie unter diesem Typen mehr hinzufügen möchten, müssen Sie das Objekt als Variable speichern (nach Alter). Wenn Sie es nur zu root hinzufügen, wurde das Element bereits zu Body oben hinzugefügt. Zum Beispiel

subbody = ET.SubElement(Body, "age") 
subbody.text = 29            

Wenn Sie also ein untergeordnetes Element hinzufügen möchten

ET.SubElement(subBody, "birthday_party", {"old": 10, "with_who": "family"})
ET.SubElement(subBody, "birthday_party", {"old": 20, "with_who": "honey"})

Sie können es so machen.

Mit Element tostring kann das erstellte XML in eine Zeichenfolge konvertiert werden Wenn Sie Folgendes verwenden, wird encoding = 'utf-8' hinzugefügt. Selbst wenn Sie dies mit tostring tun, können Sie es nicht wie angegeben angeben.

def to_xml_string(self, element):
    class dummy:
    pass

    data = []
    file = dummy()
    file.write = data.append
    ET.ElementTree(element).write(file, encoding="utf-8", xml_declaration=True)
    return "".join(data)

Ich möchte zusammenfassen, wie Element separat verwendet wird.

Recommended Posts

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-Nummerierungsvariablen
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
Kafka Python
Linux Memorandum
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