[Einführung in Python3 Tag 21] Kapitel 10 System (10.1 bis 10.5)

10.1 Datei

10.1.1 Erstellt von open ()


>>> fout=open("oops.txt","wt")
>>> print("Oops,I created a file.",file=fout)
>>> fout.close()

10.1.2 Überprüfen Sie, ob die Datei existiert, indem existiert ()


>>> import os
>>> os.path.exists("oops.txt")
True
>>> os.path.exists("./oops.txt")
True
>>> os.path.exists("aaa.txt")
False
>>> os.path.exists(".")
True
>>> os.path.exists("..")
True

10.1.3 Überprüfen des Dateityps mit isfile ()


>>> name="oops.txt"
>>> os.path.isfile(name)
True
#Ob es sich um ein Verzeichnis handelt isdir()verwenden.
#"."Repräsentiert das aktuelle Verzeichnis
#".."Repräsentiert das übergeordnete Verzeichnis
>>> os.path.isdir(name)
False
>>> os.path.isdir(".")
True
>>> os.path.isdir("..")
True
#isabs()Gibt zurück, ob das Argument ein absoluter Pfad ist.
>>> os.path.isabs(name)
False
>>> os.path.isabs("/big/fake/name")
True
>>> os.path.isabs("/big/fake/name/without/a/leading/slash")
True
>>> os.path.isabs("big/fake/name/without/a/leading/slash")
False

10.1.4 Kopie für Kopie ()


>>> import shutil
>>> shutil.copy("oops.txt","ohono.txt")
'ohono.txt'

10.1.5 Umbenennen der Datei durch Umbenennen ()


>>> import os
>>> os.rename("ohono.txt","ohwel.txt")

10.1.6 Links mit link () und symlink () erstellen


#yikes.oops von txt.Erstellen Sie einen festen Link zu txt
>>> os.link("oops.txt","yikes.txt")
>>> os.path.isfile("yikes.txt")
True
jeepers.oops von txt.Erstellen Sie einen symbolischen Link zu txt
>>> os.symlink("oops.txt","jeepers.txt")
>>> os.path.islink("jeepers.txt")
True

10.1.7 Berechtigungen mit chmod () ändern


#oops.In txt ist nur Lesen erlaubt.
>>> os.chmod("oops.txt",0o400)

>>> import stat
>>> os.chmod("oops.txt",stat.S_IRUSR)

10.1.8 Besitzerwechsel durch chown ()


>>> uid=5
>>> gid=22
>>> os.chown("oops",uid,gid)

10.1.9 Den Pfadnamen mit abspath () ermitteln


#Erweitern Sie relative Namen zu absoluten Namen.
>>> os.path.abspath("oops.txt")
'/Users/practice/bin/oops.txt'

10.1.10 Abrufen des symbolischen Linkpfadnamens mit realpath ()

#Ruft den aktuellen Status der Linkdatei ab.
>>> os.path.realpath("jeepers.txt")
'/Users/practice/bin/oops.txt'

10.1.11 Dateien mit remove entfernen


>>> os.remove("oops.txt")
>>> os.path.exists("oops.txt")
False

10.2 Verzeichnis

--Dateien befinden sich in einer hierarchischen Struktur von Verzeichnissen. Der Container für diese Dateien und das gesamte Verzeichnis wird als Dateisystem bezeichnet.

10.2.1 Erstellt von mkdir ()

>>> os.mkdir("poems")
>>> os.path.exists("poems")
True

10.2.2 Gelöscht von rmdir ()


>>> os.rmdir("poems")
>>> os.path.exists("poems")
False

10.2.3 Erstellen einer Inhaltsliste mit listdir ()


>>> os.mkdir("poems")
>>> os.listdir("poems")
[]

#Unterverzeichnis erstellen
>>> os.mkdir("poems/mcintyre")
>>> os.listdir("poems")
['mcintyre']

>>> fout=open("poems/mcintyre/the_good_man","wt")
>>> fout.write("""Cheerful and happy was his mood,
... He to the poor was kind and good,
... And he oft times did find them food,
... Also suppleis of coal and wood,
... """)
137
>>> fout.close()
>>> os.listdir("poems/mcintyre")
['the_good_man']

10.2.4 Ändern des aktuellen Verzeichnisses mit chdir ()


>>> import os
>>> os.chdir("poems")
>>> os.listdir(".")
['mcintyre']

10.2.5 Erstellen einer Liste von Dateien, die dem Muster mit glob () entsprechen


>>> import glob
>>> glob.glob("m*")
['mcintyre']
>>> glob.glob("??")
[]
>>> glob.glob("m??????e")
['mcintyre']
>>> glob.glob("[klm]*e")
['mcintyre']

10.3 Programme und Prozesse


>>> import os
#Holen Sie sich die Prozess-ID.
>>> os.getpid()
40037
#Holen Sie sich das aktuelle Verzeichnis.
>>> os.getcwd()
'/Users/practice/bin/poems'
#Benutzer-ID abrufen.
>>> os.getuid()
501
#Gruppen-ID abrufen.
>>> os.getgid()
20

10.3.1 Prozess mit Unterprozess erstellen


>>> import subprocess
>>> ret=subprocess.getoutput("date")
>>> ret
'Dienstag, 28. Januar 2020 11:17:59 JST'
>>> ret=subprocess.getoutput("date -u")
>>> ret
'Dienstag, 28. Januar 2020 02:19:40 UTC'
>>> ret=subprocess.getoutput("date -u | wc")
>>> ret
'       1       5      48'

#Akzeptiert eine Liste von Befehlen und Argumenten.
>>> ret=subprocess.check_output(["date","-u"])
>>> ret
b'2020\xe5\xb9\xb4 1\xe6\x9c\x8828\xe6\x97\xa5 \xe7\x81\xab\xe6\x9b\x9c\xe6\x97\xa5 02\xe6\x99\x8222\xe5\x88\x8605\xe7\xa7\x92 UTC\n'

#Ein Statuscode und ein Ausgabe-Taple werden zurückgegeben.
>>> ret=subprocess.getstatusoutput("date")
>>> ret
(0, 'Dienstag, 28. Januar 2020, 11:26:35 Uhr JST')

#Rufen Sie an, um nur den Endstatus zu erhalten()verwenden.
>>> ret=subprocess.call("date")
Dienstag, 28. Januar 2020 11:27:05 JST
>>> ret
0
>>> ret=subprocess.call("date -u",shell=True)
Dienstag, 28. Januar 2020 02:30:49 UTC
>>> ret=subprocess.call(["date", "-u"])
Dienstag, 28. Januar 2020 02:34:41 UTC

10.3.2 Erstellen eines Prozesses mit Mehrfachverarbeitung

mp.py



import multiprocessing
import os

def do_this(what):
	whoami(what)

def whoami(what):
	print("Process %s says: %s" % (os.getpid(), what))

#Process()Die Funktion startet einen neuen Prozess und führt den vom Ziel angegebenen Prozess aus, indem sie das durch args angegebene Argument zuweist.
#Wenn Sie ein Argument mit args erstellen und am Ende kein Komma setzen, wird es als Zeichenfolge erkannt und das Ergebnis ist seltsam.
if __name__ == "__main__":
	whoami("I'm the main program")
	for n in range(4):
		p = multiprocessing.Process(target=do_this, args=("I'm function %s" % n,))
		p.start()

Ausführungsergebnis



python mp.py
Process 40422 says: I'm the main program
Process 40438 says: I'm function 0
Process 40439 says: I'm function 1
Process 40440 says: I'm function 2
Process 40441 says: I'm function 3

10.3.3 Prozessbeendigung durch Beenden erzwingen ()

termina.py



import multiprocessing
import time
import os

def whoami(name):
	print("I'm %s, in process %s" % (name, os.getpid()))

def loopy(name):
	whoami(name)
	start = 1
	stop = 1000000
	for num in range(start, stop):
		print("\tNumber %s of %s. Honk!" % (num, stop))
		time.sleep(1)

if __name__ == '__main__':
	whoami("main")
	p = multiprocessing.Process(target=loopy, args=("loopy" ,))
	p.start()
	time.sleep(5)
	p.terminate()

Ausführungsergebnis



python termina.py
I'm main, in process 40518
I'm loopy, in process 40534
	Number 1 of 1000000. Honk!
	Number 2 of 1000000. Honk!
	Number 3 of 1000000. Honk!
	Number 4 of 1000000. Honk!
	Number 5 of 1000000. Honk!

10.4 Kalender und Uhr


#Testen Sie, ob es ein feuchtes Jahr ist.
>>> import calendar
>>> calendar.isleap(1900)
False
>>> calendar.isleap(1996)
True
>>> calendar.isleap(1999)
False
>>> calendar.isleap(2000)
True
>>> calendar.isleap(2002)
False
>>> calendar.isleap(2004)
True

10.4.1 Datum / Uhrzeit-Modul


>>> from datetime import date
>>> halloween=date(2014,10,31)
>>> halloween
datetime.date(2014, 10, 31)

#Es kann als Attribut abgerufen werden.
>>> halloween.day
31
>>> halloween.month
10
>>> halloween.year
2014
#Der Inhalt des Datums ist isformat()Kann mit angezeigt werden.
>>> halloween.isoformat()
'2014-10-31'

#today()Generieren Sie das heutige Datum mit der Methode.
>>> from datetime import date
>>> now=date.today()
>>> now
datetime.date(2020, 1, 28)

>>> from datetime import timedelta
>>> one_day=timedelta(days=1)
>>> tomorrow=now + one_day
>>> tomorrow
datetime.date(2020, 1, 29)
>>> now + 17*one_day
datetime.date(2020, 2, 14)
>>> yesterday=now-one_day
>>> yesterday
datetime.date(2020, 1, 27)

#Verwenden Sie das Zeitobjekt des Datums- / Uhrzeitmoduls, um die Uhrzeit darzustellen.
>>> from datetime import time
>>> noon=time(12,0,0)
>>> noon
datetime.time(12, 0)
>>> noon.hour
12
>>> noon.minute
0
>>> noon.second
0
>>> noon.microsecond
0

#Das datetime-Objekt ist ebenfalls isoformat()Habe eine Methode.
>>> from datetime import datetime
>>> some_day=datetime(2014,1,2,3,4,5,6)
>>> some_day
datetime.datetime(2014, 1, 2, 3, 4, 5, 6)
>>> some_day.isoformat()
'2014-01-02T03:04:05.000006'

#datetime erhält jetzt das aktuelle Datum und die aktuelle Uhrzeit()Habe eine Methode.
>>> from datetime import datetime
>>> x=datetime.now()
>>> x
datetime.datetime(2020, 1, 28, 13, 59, 8, 731311)
>>> x.year
2020
>>> x.day
28
>>> x.hour
13
>>> x.minute
59
>>> x.second
8
>>> x.microsecond
731311

#Sie können Datums- und Zeitobjekte mit Kombinieren kombinieren.
>>> from datetime import datetime,time,date
>>> noon=time(12)
>>> this_day=date.today()
>>> noon_today=datetime.combine(this_day,noon)
>>> noon_today
datetime.datetime(2020, 1, 28, 12, 0)
>>> noon_today.date()
datetime.date(2020, 1, 28)
>>> noon_today.time()
datetime.time(12, 0)

10.4.2 Verwendung des Zeitmoduls


>>> import time
>>> now=time.time()
>>> now
1580188038.071847

#ctime()Sie können Unix-Zeit in eine Zeichenfolge konvertieren.
>>> time.ctime(now)
'Tue Jan 28 14:07:18 2020'

#localtime()Gibt Datum und Uhrzeit in der Standardzeit des Systems zurück.
>>> time.localtime(now)
time.struct_time(tm_year=2020, tm_mon=1, tm_mday=28, tm_hour=14, tm_min=7, tm_sec=18, tm_wday=1, tm_yday=28, tm_isdst=0)

#gmttime()Gibt die Zeit in UTC zurück.
>>> time.gmtime(now)
time.struct_time(tm_year=2020, tm_mon=1, tm_mday=28, tm_hour=5, tm_min=7, tm_sec=18, tm_wday=1, tm_yday=28, tm_isdst=0)

#mktime()Ist eine Struktur_Zeit Konvertiert ein Objekt in Unix-Zeit.
>>> tm=time.localtime(now)
>>> time.mktime(tm)
1580188038.0

10.4.3 Datum und Uhrzeit lesen und schreiben

--Die Ausgabe von Datum und Uhrzeit ist kein proprietäres Patent von isoformat (). --strftime () wird in Abhängigkeit von Zeitmodul, Datum / Uhrzeit, Datum und Uhrzeitobjekt bereitgestellt und kann in eine Zeichenfolge konvertiert werden. --Verwenden Sie strptime (), um eine Zeichenfolge in Datums- und Zeitinformationen zu konvertieren.


#ctime()Konvertiert die Unix-Zeit in eine Zeichenfolge.
>>> import time
>>> now=time.time()
>>> time.ctime(now)
'Tue Jan 28 14:15:57 2020'

>>> import time
#strftime()Verwenden Sie den Formatbezeichner von.
>>> fmt="""It is %A,%B,%d,%Y, local time %I:%M:%S%p"""
>>> t=time.localtime()
>>> t
time.struct_time(tm_year=2020, tm_mon=1, tm_mday=28, tm_hour=14, tm_min=21, tm_sec=10, tm_wday=1, tm_yday=28, tm_isdst=0)
#struct_Konvertieren Sie die Zeit in eine Zeichenfolge.
>>> time.strftime(fmt,t)
'It is Tuesday,January,28,2020, local time 02:21:10PM'


>>> from datetime import date
>>> some_day=date(2014,7,4)
#Bei Verwendung in einem Datumsobjekt wird nur das Datum formatiert.
>>> some_day.strftime(fmt)
'It is Friday,July,04,2014, local time 12:00:00AM'

>>> from datetime import time
>>> some_time=time(10,45)
#Bei Verwendung im Zeitobjekt wird nur die Zeit formatiert.
>>> some_time.strftime(fmt)
'It is Monday,January,01,1900, local time 10:45:00AM'

#Umgekehrt strptime, um eine Zeichenfolge in Datums- und Zeitinformationen umzuwandeln()verwenden.
#Die anderen Teile als das untergeordnete Format müssen genau übereinstimmen.
>>> import time
>>> fmt="%Y-%m-%d"
>>> time.strptime("2012-01-29",fmt)
time.struct_time(tm_year=2012, tm_mon=1, tm_mday=29, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=6, tm_yday=29, tm_isdst=-1)

#setlocale()Gibt das Datum im angegebenen Gebietsschema zurück.
>>> import locale
>>> from datetime import date
>>> halloween=date(2014,10,31)
>>> for lang_country in ["en_us","fr_fr","de_de","es_es","is_is",]:
...     locale.setlocale(locale.LC_TIME,lang_country)
...     halloween.strftime("%A, %B, %d")
... 
'en_us'
'Friday, October, 31'
'fr_fr'
'Vendredi, octobre, 31'
'de_de'
'Freitag, Oktober, 31'
'es_es'
'viernes, octubre, 31'
'is_is'
'föstudagur, október, 31'

>>> import locale
>>> names=locale.locale_alias.keys()
>>> good_names=[name for name in names if
... len(name)==5 and name[2]=="_"
... 
... 
... ]
>>> good_names[5]
'ak_gh'
>>> good_names=[name for name in names if
... len(name)==5 and name[2]=="_"]
>>> good_names[5]
'ak_gh'
>>> good_names[:5]
['a3_az', 'aa_dj', 'aa_er', 'aa_et', 'af_za']
>>> de=[name for name in good_names if name.startswith("de")]
>>> de
['de_at', 'de_be', 'de_ch', 'de_de', 'de_it', 'de_lu']

10.5 Frage überprüfen

10-1 Schreiben Sie das aktuelle Datum in Form einer Zeichenfolge in eine Textdatei mit dem Namen today.txt.


>>> from datetime import date
>>> with open("today.txt","wt") as fout:
...     now=date.today()
...     now_str=now.isoformat()
...     print(now_str,file=fout)

10-2 Lesen Sie den Inhalt der Textdatei today.txt in eine Zeichenfolgenvariable mit dem Namen today_string.


>>> with open("today.txt","rt") as input:
...     today_string=input.read()
... 
>>> today_string
'2020-01-28\n'

10-3 Lassen Sie uns das Datum von today_string analysieren und abrufen.


>>> import time
>>> fmt="%Y-%m-%d\n"
#Zeichenkette ⇨ Strptime für Datumsinformationen()verwenden.
>>> time.strptime(today_string,fmt)
time.struct_time(tm_year=2020, tm_mon=1, tm_mday=28, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=28, tm_isdst=-1)

10-4 Erstellen Sie eine Liste der Dateien im aktuellen Verzeichnis.

>> import os
>>> os.listdir(".")
[`flask2.py`, `pip3.7`, `jeepers.txt`, `villains`, `activate.ps1`, `index.html`, `.DS_Store`, `python3`, `settings.cfg`, `relativity`, `yikes.txt`, `easy_install`, `python`, `pip3`, `ohwel.txt`, `today.txt`, `activate.fish`, `easy_install-3.7`, `bottle3.py`, `zoo.py`, `flask9-2.py`, `test1.py`, `weather.py`, `bottle2.py`, `wheel`, `enterprise.db`, `flask9-3.py`, `links.py`, `__pycache__`, `flask3a.py`, `python3.7`, `test2.py`, `bottle1.py`, `python-config`, `activate_this.py`, `pip`, `bottle_test.py`, `definitions.db`, `flask3b.py`, `menu.xml`, `books.csv`, `mp.py`, `activate.xsh`, `weatherman.py`, `lelatibity`, `termina.py`, `bfile`, `flask3c.py`, `relatibity`, `flask9-5.py`, `sources`, `text.txt`, `templates`, `activate`, `poems`, `books.db`, `flask1.py`, `mcintyre.yaml`, `report.py`, `zoo.db`, `activate.csh`]

10-5 Erstellen Sie eine Liste der Dateien im übergeordneten Verzeichnis.


>>> import os
>>> os.listdir("..")
['.DS_Store', '61.py', 'bin', 'python', 'include', 'lib']


10-6 Erstellen Sie drei separate Prozesse mithilfe der Mehrfachverarbeitung. Lassen Sie jeden für eine zufällige Anzahl von Sekunden von 1 bis 5 Sekunden schlafen.

multi_times.py



import multiprocessing
import os

def now(seconds):
    from datetime import datetime
    from time import sleep
    sleep(seconds)
    print("wait", seconds, "second, time is ", datetime.utcnow())

if __name__== "__main__":
    import random
    for n in range(3):
        seconds=random.random()
        proc=multiprocessing.Process(target=now, args=(seconds,))
        proc.start()

Ausführungsergebnis



python3 multi_times.py
wait 0.31146317121366796 second, time is  2020-01-28 06:30:39.446188
wait 0.5162984978514253 second, time is  2020-01-28 06:30:39.650398
wait 0.8005158157521853 second, time is  2020-01-28 06:30:39.934936

10-7 Erstellen Sie ein Objekt für ein Geburtstagsdatum.


>>> from datetime import date
>>> birthday=date(1994, 1, 1)
>>> birthday
datetime.date(1994, 1, 1)


10-8 An welchem Tag hast du Geburtstag?

>>> import time
>>> from datetime import date
>>> birthday=date(1994, 1, 1)
>>> fmt="%Y-%m-%d-%A"
>>> date.strftime(birthday,fmt)
'1994-01-01-Saturday'


10-9 Wann sind 10.000 Tage seit meiner Geburt vergangen?


>>> from datetime import timedelta
>>> day=timedelta(days=10000)
>>> A=birthday+day
>>> A
datetime.date(2021, 5, 19)


Impressionen

Ich habe es schnell überprüft. Ich möchte Tutorials sehen, wenn ich es benutze.

Verweise

"Einführung in Python3 von Bill Lubanovic (veröffentlicht von O'Reilly Japan)"

Recommended Posts

[Einführung in Python3 Tag 21] Kapitel 10 System (10.1 bis 10.5)
[Einführung in Python3 Tag 13] Kapitel 7 Zeichenfolgen (7.1-7.1.1.1)
[Einführung in Python3 Tag 14] Kapitel 7 Zeichenfolgen (7.1.1.1 bis 7.1.1.4)
[Einführung in Python3 Tag 15] Kapitel 7 Zeichenfolgen (7.1.2-7.1.2.2)
[Einführung in Python3, Tag 17] Kapitel 8 Datenziele (8.1-8.2.5)
[Einführung in Python3, Tag 17] Kapitel 8 Datenziele (8.3-8.3.6.1)
[Einführung in Python3 Tag 19] Kapitel 8 Datenziele (8.4-8.5)
[Einführung in Python3 Tag 18] Kapitel 8 Datenziele (8.3.6.2 bis 8.3.6.3)
[Einführung in Python3 Tag 12] Kapitel 6 Objekte und Klassen (6.3-6.15)
[Einführung in Python3, Tag 22] Kapitel 11 Parallele Verarbeitung und Vernetzung (11.1 bis 11.3)
[Einführung in Python3 Tag 11] Kapitel 6 Objekte und Klassen (6.1-6.2)
[Einführung in Python3, Tag 23] Kapitel 12 Werden Sie Paisonista (12.1 bis 12.6)
[Einführung in Python3 Tag 20] Kapitel 9 Enträtseln des Webs (9.1-9.4)
[Einführung in Python3 Tag 1] Programmierung und Python
[Einführung in Python3 Tag 3] Kapitel 2 Py-Komponenten: Numerische Werte, Zeichenfolgen, Variablen (2.2 bis 2.3.6)
[Einführung in Python3 Tag 2] Kapitel 2 Py-Komponenten: Numerische Werte, Zeichenfolgen, Variablen (2.1)
Einführung in die Überprüfung der Wirksamkeit Kapitel 1 in Python geschrieben
Einführung in die Python-Sprache
Einführung in OpenCV (Python) - (2)
[Einführung in Python3 Tag 7] Kapitel 3 Py Tools: Listen, Taples, Wörterbücher, Mengen (3.3-3.8)
[Einführung in Python3 Tag 5] Kapitel 3 Py Tools: Listen, Taples, Wörterbücher, Sets (3.1-3.2.6)
[Einführung in Python3 Tag 10] Kapitel 5 Py's Cosmetic Box: Module, Pakete, Programme (5.4-5.7)
[Einführung in Python3 Tag 9] Kapitel 5 Py's Cosmetic Box: Module, Pakete, Programme (5.1-5.4)
[Einführung in Python3 Tag 6] Kapitel 3 Py-Tool-Liste, Tapple, Wörterbuch, Set (3.2.7-3.2.19)
Einführung in die Überprüfung der Wirksamkeit Kapitel 3 in Python geschrieben
Einführung in die Überprüfung der Wirksamkeit Kapitel 2 in Python geschrieben
Einführung in Python Django (2) Win
Einführung in die serielle Kommunikation [Python]
[Einführung in Python] <Liste> [Bearbeiten: 22.02.2020]
Einführung in Python (Python-Version APG4b)
Eine Einführung in die Python-Programmierung
Einführung in Python For, While
[Kapitel 5] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Kapitel 3] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Kapitel 2] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Technisches Buch] Einführung in die Datenanalyse mit Python -1 Kapitel Einführung-
[Kapitel 4] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Einführung in die Udemy Python3 + -Anwendung] 31. Kommentar
Einführung in die Python Numerical Calculation Library NumPy
[Einführung in Python] <numpy ndarray> [edit: 2020/02/22]
[Einführung in die Udemy Python3 + -Anwendung] 57. Decorator
Einführung in Python Hands On Teil 1
[Einführung in die Udemy Python3 + -Anwendung] 56. Abschluss
Einführung in Protobuf-c (C-Sprache ⇔ Python)
[Einführung in Python] Verwenden wir Pandas
[Einführung in Python] Verwenden wir Pandas
[Einführung in die Udemy Python3 + -Anwendung] Zusammenfassung
Python Tag 1
Einführung in die Bildanalyse opencv python
[Einführung in Python] Verwenden wir Pandas
Erste Schritte mit Python für Nicht-Ingenieure
[AWS SAM] Einführung in die Python-Version
[Python Tutorial] Eine einfache Einführung in Python
IPynb-Bewertungssystem mit TA von Introduction to Programming (Python)
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 8 Einführung in Numpy
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 10 Einführung in Cupy
Ich las "Das Lernen mit Python von der Einführung bis zur Praxis stärken", Kapitel 1
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 9 Einführung in das Scikit-Lernen
Ich las "Das Lernen mit Python von der Einführung bis zur Praxis stärken", Kapitel 2
[Einführung in die Udemy Python3 + -Anwendung] 18. Listenmethode