Einführung in die Python-Sprache

Installation

Unter https://www.python.org/downloads/ befindet sich ein Installationsprogramm. Verwenden Sie es daher zur Installation. Derzeit (15.11.2015) ist Python 3.5 das neueste.

Wenn Sie sich in einer Windows-Umgebung befinden, legen Sie die Umgebungsvariable fest. Dieser Bereich kann hilfreich sein. http://www.pythonweb.jp/install/setup/index1.html

Über Python

Python ausführen

$ python
Python 3.5.0 (default, Nov 15 2015, 16:08:58)
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.72)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>

So schreiben und führen Sie ein Skript aus

Schreiben und vorerst ausführen

schreiben...

test.py


#! /usr/bin/env python
# -*- coding: utf-8 -*-

def main():
    print('GOGO')

if __name__ == '__main__':
    main()

Lauf ...

test.py


$ python test.py
GOGO

Kommentar Zeile für Zeile

test.py


#! /usr/bin/env python

Das ist Shebang. (Unix verspricht (lesen Sie dies, wenn Sie interessiert sind, weil es nicht im Kontext von Python steht http://cpplover.blogspot.jp/2013/08/shebang.html))

test.py


# -*- coding: utf-8 -*-

Zeichencode-Spezifikation. (Ohne dies gibt es Fälle, in denen Sie sterben, wenn Sie japanische Kommentare schreiben)

test.py


def main():

Funktionsdefinition.

test.py


    print('GOGO')

Rufen Sie die Druckfunktion auf, die eine der integrierten Funktionen ist. 'GOGO' übergibt einen String als Argument.

test.py


if __name__ == '__main__':

Wenn Sie die Datei als Skript ausführen, enthält die Variable "name" die Zeichenfolge "main". Wenn es als Skript ausgeführt wird, wird diese Bedingung daher wahr, und der Block in diesem ist ein praktischer Einstiegspunkt. Beim Import mit einer Importanweisung wird dieser Block nicht ausgeführt, da __name__ den Modulnamen enthält.

test.py


    main()

Es ist ein Funktionsaufruf.

Haupttypen

type () - Untersuchen Sie den Typ

Sie können den Objekttyp mit dem integrierten Funktionstyp () überprüfen.

>>> type(1)
<class 'int'>
>>> type('1')
<class 'str'>
>>> type([1, 2, 3])
<class 'list'>
>>> type({'first': 1, 'second': 2})
<class 'dict'>

int --integer

Es ist eine ganze Zahl.

>>> 3 + 2  #Zusatz
5
>>> 3 - 2  #Subtraktion
1
>>> 3 * 2  #Multiplikation
6
>>> 3 / 2  #Teilung(Beachten Sie, dass sich das Verhalten zwischen Python 2 und Python 3 unterscheidet.)
1.5
>>> 3 // 2  #Teilung(Schneiden Sie ein paar ab)
1
>>> 3 % 2  #Überschuss
1
>>> 3 ** 2  #Reiten
9

str --string

>>> 'Hello World  '.strip()  #Leere Zeichen vorher und nachher/Löschen Sie das Zeilenvorschubzeichen
'Hello World'
>>> 'Hello World  '.split()  #Teilt
['Hello', 'World']
>>> 'Hello World  '.lstrip('H')  #Löschen Sie den linken H-Buchstaben
'ello World  '
>>> 'Hello' + 'World'  #Beitreten
'HelloWorld'
>>> '{0} {1}'.format('Hello', 'World')  #String-Format
'Hello World'
>>> '{word1} {word2}'.format(word1='Hello', word2='World')  #Zeichenfolgenformat Teil 2
'Hello World'

Liste - Liste

>>> [1, 2, 3]  #Erstelle eine Liste
[1, 2, 3]
>>> [1, 2, 3] + [4, 5, 6]  #Beitreten
[1, 2, 3, 4, 5, 6]
>>> 1 in [1, 2, 3]  #Überprüfen Sie, ob enthalten(Inklusive Koffer)                                                                                                                                                     
True
>>> 5 in [1, 2, 3]  #Überprüfen Sie, ob enthalten(Fall nicht enthalten)                                                                                                                                                                       
False

hinzufügen

>>> nums = [1, 2, 3]
>>> nums
[1, 2, 3]
>>> nums.append(4)
>>> nums
[1, 2, 3, 4]

Entfernung

>>> nums = [1, 2, 3, 1]
>>> nums.remove(1)

Diktat - Diktion

dict ist eine Datenstruktur mit Name / Wert-Paaren.

Definieren wir als Beispiel ein Diktat mit zwei Fruchtnamen und -mengen.

>>> fruits = {
... 'apple': 100,
... 'orange': 50,
... }
>>> 

Diese "Früchte" enthalten das folgende Wertepaar:

key value
'apple' 100
'orange' 50

Wenn Sie den Wert von "apple" erhalten möchten, geben Sie den Schlüssel in [] an.

>>> fruits['apple']
100
>>> fruits['orange']
50

Wenn Sie einen Schlüssel angeben, der nicht vorhanden ist, wird eine KeyError-Ausnahme ausgelöst.

>>> fruits['grape']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'grape'
>>>

Eine kleine Anwendung

Berechnen wir die Fruchtmenge anhand der vorherigen "Früchte". 'Apfel' ist 1 In diesem Fall:

>>> fruits['apple'] * 1
100

'Apfel' ist 2 In diesem Fall:

>>> fruits['apple'] * 2
200

Sie können auch Variablen im "Apfel" und in 2 Teilen angeben. Wenn Sie eine Variable namens name definieren und zur Berechnung "apple'in" eingeben, sieht dies wie folgt aus.

>>> name = 'apple'
>>> fruits[name] * 2
200

Lassen Sie uns den Zahlenteil in eine Variable namens count einfügen.

>>> count = 2
>>> fruits[name] * count
200

Sie können berechnen, ohne den Code des zu berechnenden Teils zu ändern, indem Sie den Wert von Name und Anzahl ändern.

>>> name = 'orange'
>>> fruits[name] * count
100
>>> count = 20
>>> fruits[name] * count
1000

Der Code des zu berechnenden Teils kann verwendet werden, ohne den Code zu ändern. Definieren wir dies als eine Funktion, die die Wiederverwendung erleichtert.

>>> fruits = {
... 'apple': 100,
... 'orange': 50,
... }
>>>
>>> def calc_fruit_amount(name, count):
...   return fruits[name] * count
...
>>>

Die Funktion calc_fruit_amount () berechnet die Gesamtmenge durch Angabe des Namens und der Anzahl der Früchte.

>>> calc_fruit_amount('apple', 2)
200
>>> calc_fruit_amount('apple', 3)
300
>>> calc_fruit_amount('orange', 3)
150
>>>

Sie können sehen, dass der richtige Betrag berechnet wurde.

Steuerungssyntax

if

Führt den Block im Inneren aus, wenn die folgende Bedingung wahr ist. Der if-Begleiter ist if / elif / else.

fruits.py


fruits = {
    'apple': 100,
    'orange': 50,
    }

def calc_fruit_amount(name, count):
    return fruits[name] * count


def decide_amount(name, count, threshold=1000):
     amount = calc_fruit_amount(name, count)
     if amount > threshold:
           print('hoch')
     elif amount == threshold:
           print('gewöhnlich')
     else:  # < threshold
           print('billig')

Entscheidung_Betrag () bestimmt, ob der Gesamtbetrag größer, gleich oder kleiner als der Schwellenwert ist, und gibt hoch / normal / billig aus.

for in

Es wird eine Schleife ausgeführt, indem Elemente einzeln aus einem wiederholbaren Objekt wie einer Liste gezogen werden. Beenden Sie, wenn das Element fertig ist.

fruits_list.py



fruits = {
    'apple': 100,
    'orange': 50,
    }

for name in ['apple', 'orange']:
    print('{} {}Kreis'.format(name, fruits[name]))

Zeigt den Namen und die Menge der Früchte an. Der folgende Code verhält sich genauso.

fruits_list2.py



fruits = {
    'apple': 100,
    'orange': 50,
    }

for name, amount in fruits.items():
    print('{} {}Kreis'.format(name, amount))

try

Eine Ausnahme wird ausgelöst, wenn der Vorgang, den Sie ausführen möchten, nicht zulässig ist. Wenn Sie beispielsweise versuchen, einen Wert mit einem Namen abzurufen, der nicht aus Früchten besteht, wird eine Ausnahme namens KeyError angezeigt.

>>> fruits['ham']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'ham'
>>>

Wenn während der Ausführung des Skripts eine Ausnahme auftritt, wird der Prozess dort abnormal beendet. Wenn Sie die auftretende Ausnahme ordnungsgemäß behandeln, können Sie die Verarbeitung ohne ungewöhnliche Beendigung fortsetzen.

Wenn im folgenden Beispiel calc_fruit_amount ein Name übergeben wird, der in Früchten nicht vorhanden ist, wird eine Fehlermeldung angezeigt.

fruits = {
    'apple': 100,
    'orange': 50,
    }

def calc_fruit_amount(name, count):
    try:
        return fruits[name] * count
    except:
        print('{}Ist nicht vorhanden'.format(name))

fizzbuzz

Was ist Fizzbuzz?

Es ist ein Stück. (Zitat: https://ja.wikipedia.org/wiki/Fizz_Buzz)

Dies ist ein Thema, das häufig als Programmierübung verwendet wird.

Implementierungsbeispiel für fizzbuzz


for ii in range(1,101):
    if ii % 15 == 0:
       print('FizzBuzz')
    elif ii % 5 == 0:
       print('Buzz')
    elif ii % 3 == 0:
       print('Fizz')
    else:
       print(ii)

Standardmodul

Sie können das Standardmodul mithilfe der import-Anweisung verwenden.

>>> import re

--re regulärer Ausdruck --sys Abrufen und Bedienen von Informationen über den ausgeführten Python usw. --os Erfassung und Betrieb von Umgebungsinformationen wie dem ausgeführten Betriebssystem

Es gibt viele andere. http://docs.python.jp/3.5/library/index.html

Verwenden Sie ein Paket eines Drittanbieters

Die Standardbibliothek von Python ist sehr umfangreich, aber wenn Sie ein etwas kompliziertes Programm schreiben oder ein System erstellen, ist es eine sehr schwierige Aufgabe, nur die Standardbibliothek zu erstellen. Einige Python-Benutzer veröffentlichen ihre eigenen Pakete im Internet. Sie werden als Pakete von Drittanbietern bezeichnet. Beispielsweise sind Django, ein Webanwendungsframework, und Pandas, die häufig für die Datenanalyse verwendet werden, Pakete von Drittanbietern.

Pakete von Drittanbietern können mit dem Befehl pip installiert werden. Hier installieren wir die HTTP-Bibliothek.

$ sudo pip install requests

Starten Sie Python und importieren Sie Anforderungen.

>>> import requests
>>>

Wenn Sie die Eingabeaufforderungsmarke für die interaktive Python-Shell (>>>) sehen, sind Sie erfolgreich. Wenn dies fehlschlägt, wird ein Importfehler angezeigt.

Versuchen Sie, eine GET-Anfrage über HTTP an example.com zu senden.

>>> requests.get('http://example.com/')
<Response [200]>

Wenn Sie keine Anfragen mehr benötigen, können Sie diese mit "pip uninstall" deinstallieren. (j / n) wartet auf Eingabe, geben Sie also y ein und drücken Sie die Eingabetaste.

Hinweis) In vielen Fällen ist sudo aufgrund von Berechtigungsproblemen erforderlich.

$ sudo pip uninstall requests
~ Abkürzung ~
Proceed (y/n)? y [ENTER]
  Successfully uninstalled requests-2.7.0
$

Anfragen wurden deinstalliert.

Wenn Sie die Bibliothek eines Drittanbieters bei pypi registrieren, können Sie die Pip-Installation nur mit dem Paketnamen durchführen. Die meisten der häufig verwendeten Bibliotheken sind in pypi registriert.

Virtuelle Umgebung (venv)

Wenn Sie mit mehreren verschiedenen Projekten fortfahren, möchten Sie dasselbe Paket mit verschiedenen Versionen verwenden. Zum Beispiel, wenn Sie Anforderungen-2.6 für Projekt A und Anforderungen-2.7 für Projekt X verwenden möchten. In diesem Fall können Sie, wenn Sie es wie zuvor installieren, nur beide Versionen von Anforderungen verwenden. Python verwendet venv, um solche Probleme zu lösen. Jeder Venv kann individuell eine unabhängige Python-Umgebung erstellen. Fügen Sie die Version des Drittanbieterpakets, das Sie verwenden möchten, in jede der erstellten Umgebungen ein und verwenden Sie sie. Der Umgang mit der Umgebung unterscheidet sich zwischen OSX / Linux und Windows.

Für OS X / Linux

Erstellen Sie eine venv-Umgebung.

$ pyvenv-3.5 env

Betreten Sie die venv-Umgebung. (Laden Sie das Aktivierungsskript mit dem Quellbefehl) Bei Erfolg ändert sich die Eingabeaufforderungsmarkierung.

$ source env/bin/activate 
(env) $

Installieren Sie Anforderungen als Beispiel.

(env) $ pip install requests

Sie können die installierten Anforderungen importieren.

>>> import requests
>>>

Führen Sie Deaktivieren aus, um die Umgebung zu verlassen. Bei Erfolg wird die Eingabeaufforderungsmarkierung wiederhergestellt.

(env) $ deactivate
$ 

Anforderungen können nicht importiert werden, da sie aus der virtuellen Umgebung stammen.

>>> import requests
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'requests'

Für Windows

Erstellen Sie eine venv-Umgebung.

c:\Temp>c:\Python35\python -m venv env

Betreten Sie die venv-Umgebung. (Führen Sie activ.bat aus.) Bei Erfolg ändert sich die Eingabeaufforderungsmarkierung.

c:\Temp>env\Scripts\activate
(env) c:\Temp>

Installieren Sie Anforderungen als Beispiel.

(env) c:\Temp>pip install requests

Sie können die installierten Anforderungen importieren.

>>> import requests
>>>

Führen Sie Deaktivieren aus, um die Umgebung zu verlassen. Bei Erfolg wird die Eingabeaufforderungsmarkierung wiederhergestellt.

(env) c:\Temp>deactivate
c:\Temp>

Anforderungen können nicht importiert werden, da sie aus der virtuellen Umgebung stammen.

>>> import requests
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'requests'

Was ist, wenn die virtuelle Umgebung nicht mehr benötigt wird?

Löschen Sie das gesamte Verzeichnis, wenn Sie die Umgebung nicht mehr benötigen. Es gibt kein Problem, da die Python-Umgebung, aus der die virtuelle Umgebung erstellt wurde, nicht verschwindet. Natürlich können Sie die virtuelle Umgebung neu erstellen.

OS X / Linux

$ rm -rf env

Windows

c:\Temp> rd /q /s env

Hinweis) Wenn der Quellcode usw. unter env platziert wird, verschwindet er ebenfalls. Bitte seien Sie vorsichtig.

Recommended Posts

Einführung in die Python-Sprache
Einführung in Protobuf-c (C-Sprache ⇔ Python)
Einführung in OpenCV (Python) - (2)
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
[Kapitel 4] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Einführung in die Udemy Python3 + -Anwendung] 58. Lambda
[Einführung in die Udemy Python3 + -Anwendung] 31. Kommentar
Einführung in die Python Numerical Calculation Library NumPy
Trainieren! !! Einführung in Python Type (Type Hints)
[Einführung in Python3 Tag 1] Programmierung und Python
[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 Python3 Tag 13] Kapitel 7 Zeichenfolgen (7.1-7.1.1.1)
[Einführung in Python] So analysieren Sie JSON
[Einführung in die Udemy Python3 + -Anwendung] 56. Abschluss
[Einführung in Python3 Tag 14] Kapitel 7 Zeichenfolgen (7.1.1.1 bis 7.1.1.4)
[Einführung in die Udemy Python3 + -Anwendung] 59. Generator
[Einführung in Python3 Tag 15] Kapitel 7 Zeichenfolgen (7.1.2-7.1.2.2)
[Einführung in Python] Verwenden wir Pandas
Python, um von einer anderen Sprache zu wechseln
[Einführung in Python] Verwenden wir Pandas
[Einführung in die Udemy Python3 + -Anwendung] Zusammenfassung
Einführung in die Bildanalyse opencv python
[Einführung in Python] Verwenden wir Pandas
Erste Schritte mit Python für Nicht-Ingenieure
Einführung in Python Django (2) Mac Edition
[AWS SAM] Einführung in die Python-Version
[Einführung in Python3 Tag 21] Kapitel 10 System (10.1 bis 10.5)
[Python Tutorial] Eine einfache Einführung in Python
Einführung in Scrapy (1)
Einführung in Scrapy (3)
Auf Python 2.7.9 aktualisiert
Erste Schritte mit Supervisor
Einführung in Tkinter 1: Einführung
Einführung in PyQt
Einführung in Scrapy (2)
[Linux] Einführung in Linux
Einführung in Scrapy (4)
Einführung in discord.py (2)
"Backport" zu Python 2
Einführung von Python
[Einführung in die Udemy Python3 + -Anwendung] 18. Listenmethode
[Einführung in die Udemy Python3 + -Anwendung] 63. Notation zur Einbeziehung des Generators
[Einführung in Python] Wie verwende ich eine Klasse in Python?
[Einführung in die Udemy Python3 + -Anwendung] 25. Wörterbuchmethode
[Einführung in die Udemy Python3 + -Anwendung] 33. if-Anweisung
Einführung in die diskrete Ereignissimulation mit Python # 1
[Einführung in die Udemy Python3 + -Anwendung] 13. Zeichenmethode
[Einführung in Python3, Tag 17] Kapitel 8 Datenziele (8.1-8.2.5)
[Einführung in die Udemy Python3 + -Anwendung] 55. In-Function-Funktionen