Heim  >  Artikel  >  Backend-Entwicklung  >  Python-Grundlagen

Python-Grundlagen

高洛峰
高洛峰Original
2017-02-16 11:22:281595Durchsuche

Vorwort

Python ist eine Programmiersprache, die 1989 von Onkel Turtle geschrieben wurde, um das langweilige Weihnachtsfest zu vertreiben. Sie zeichnet sich durch Eleganz, Klarheit und Einfachheit aus. Sie verfügt jetzt über eine umfangreiche Standardbibliothek und Bibliotheken von Drittanbietern.
Python eignet sich für die Entwicklung von Web-Websites und verschiedenen Netzwerkdiensten, Systemtools und Skripten. Es kann als „Klebersprache“ zum Verpacken von Modulen verwendet werden, die in anderen Sprachen entwickelt wurden, für wissenschaftliche Berechnungen usw.

Der Editor hat drei Gründe, Python zu lernen:
Um alle Arten von benötigten Daten zu crawlen, können Sie genauso gut Python lernen.
Um Daten zu analysieren und Daten abzubauen, können Sie genauso gut Python lernen.
Um ein paar lustige und interessante Dinge zu tun, können Sie genauso gut Python lernen.

Vorbereitung

1. Laden Sie Ihre Lieblingsversion von der offiziellen Python-Website herunter und installieren Sie sie.

2. Öffnen Sie IDLE, die integrierte Entwicklungsumgebung von Python. Obwohl sie einfach ist, ist sie äußerst nützlich. IDLE umfasst einen Editor mit farblicher Hervorhebung der Syntax, ein Debugging-Tool, eine Python-Shell und eine vollständige Online-Dokumentation für Python 3.

Hallo Welt

1. Geben Sie im Leerlauf print('hello world') ein und drücken Sie die Eingabetaste, um „Hallo Welt“ auszudrucken.
PS: Es spielt keine Rolle, ob Sie am Ende der Anweisung ein Semikolon hinzufügen oder nicht ; Der Herausgeber hat beschlossen, kein Semikolon hinzuzufügen, was einfacher ist.

2. Erstellen Sie mit sublime eine neue Datei hello.py mit folgendem Inhalt:

print('hello world')

Unter Windows, Umschalt+Rechtsklick, öffnen Sie hier das Befehlsfenster, führen Sie python hello.py aus , und drücken Sie die Eingabetaste. Drucken Sie dann „Hallo Welt“ aus.

3. Erstellen Sie mit sublime eine neue Datei hello.py mit folgendem Inhalt:

#!/usr/bin/env python
print('hello world')

In einer Linux- oder Mac-Umgebung können Sie das Skript direkt ausführen. Fügen Sie zuerst die Ausführungsberechtigung chmod a+x hello.py hinzu und führen Sie dann ./hello.py aus. Natürlich können Sie python hello.py auch zum Ausführen von Skripten verwenden, genau wie Windows.

Modul vorstellen

1. Erstellen Sie eine neue name.py mit folgendem Inhalt:

name='voidking'

Ausführen python name.py.
3. Rufen Sie den Python-Shell-Modus auf, führen Sie import name, print(name.name) aus und Voidking wird gedruckt.

Grundlegende Syntax

Gemeinsame Funktionen (Druck), Datentypen, Ausdrücke, Variablen, Bedingungen und Schleifen sowie Funktionen. Ähnlich wie bei anderen Sprachen wählen Sie unten einen Teil aus, um ihn zu erweitern.

verknüpftes Listenarray

Array definieren
myList = ['Hello', 100, True]
2. Array-Element ausgeben
print(myList),

4. Elemente am Ende anhängen print(myList[0])print(myList[-1])
5. Elemente an den Kopf anhängen
myList.append('voidking')
6. Elemente löschen
myList.insert(0,'voidking') ,

7. ElementzuweisungmyList.pop()myList.pop(0)

Tupel-FestfeldmyList[0]='hello666'

1. Definition des Arrays

Fehlerdefinition :
, korrekte Definition: myTuple = ('Hello', 100, True)
2. Ausgabearrayelement myTuple1=(1)myTuple=(1,)
4 >
, print(myTuple)

if-Anweisung print(myTuple[0])
if
t = ('a', 'b', ['A', 'B'])t[2][0]='X' und drücken Sie zweimal die Eingabetaste, um den Code auszuführen.

if-else

if-elif-else
score = 75
if score>=60:
    print 'passed'

Schleife

for-Schleife
if score>=60:
    print('passed')
else:
    print('failed')

while-Schleife
if score>=90:
    print('excellent')
elif score>=80:
    print('good')
elif score>=60:
    print('passed')
else:
    print('failed')

Pause

L = [75, 92, 59, 68]
sum = 0.0
for score in L:
       sum += score
print(sum / 4)
Weiter

sum = 0
x = 1
while x<100:
    sum += x
    x = x + 1
print(sum)
mehrere Schleifen

sum = 0
x = 1
while True:
    sum = sum + x
    x = x + 1
    if x > 100:
        break
print(sum)
dict

dict Die Funktion besteht darin, eine Zuordnungsbeziehung zwischen einem Schlüsselsatz und einem Wertesatz herzustellen.
L = [75, 98, 59, 81, 66, 43, 69, 85]
sum = 0.0
n = 0
for x in L:
    if x < 60:
        continue
    sum = sum + x
    n = n + 1
print(sum/n)

set
for x in [&#39;A&#39;, &#39;B&#39;, &#39;C&#39;]:
    for y in [&#39;1&#39;, &#39;2&#39;, &#39;3&#39;]:
        print(x + y)

set enthält eine Reihe von Elementen, was der Liste sehr ähnlich ist, aber die Elemente von set werden nicht wiederholt und sind ungeordnet, was dem Schlüssel von sehr ähnlich ist dict. Bild.

d = {
    &#39;Adam&#39;: 95,
    &#39;Lisa&#39;: 85,
    &#39;Bart&#39;: 59,
    &#39;Paul&#39;: 75
}
print(d)
print(d[&#39;Adam&#39;])
print(d.get(&#39;Lisa&#39;))
d[&#39;voidking&#39;]=100
print(d)
for key in d:
    print(key+&#39;:&#39;,d.get(key))

Funktion

Eingebaute Funktion

s = set([&#39;Adam&#39;, &#39;Lisa&#39;, &#39;Bart&#39;, &#39;Paul&#39;])
print(s)
s = set([&#39;Adam&#39;, &#39;Lisa&#39;, &#39;Bart&#39;, &#39;Paul&#39;, &#39;Paul&#39;])
print(s)
len(s)
print(&#39;Adam&#39; in s)
print(&#39;adam&#39; in s)
for name in s:
    print(name)
s = set([(&#39;Adam&#39;, 95), (&#39;Lisa&#39;, 85), (&#39;Bart&#39;, 59)])
for x in s:
    print(x[0]+&#39;:&#39;,x[1])
Benutzerdefinierte Funktion
s.add(100)
print(s)
s.remove((&#39;Adam&#39;,95))
print(s)

Einführung der Funktionsbibliothek

del sum
L = [x*x for x in range(1,101)]
print sum(L)
Variable Parameter

def my_abs(x):
    if x >= 0:
        return x
    else:
        return -x
my_abs(-100)
Slice

Listen-Slice
import math

def quadratic_equation(a, b, c):
    x = b * b - 4 * a * c
    if x < 0:
        return none
    elif x == 0:
        return -b / (2 *a)
    else:
        return ((math.sqrt(x) - b ) / (2 * a)) , ((-math.sqrt(x) - b ) / (2 * a))
print(quadratic_equation(2, 3, 0))
print(quadratic_equation(1, -6, 5))

Reverse-Slice
def average(*args):
    if args:
        return sum(args)*1.0/len(args)
    else:
        return 0.0

print(average())
print(average(1, 2))
print(average(1, 2, 2, 3, 4))

PS: Range ist eine geordnete Liste, die standardmäßig in Funktionsform ausgedrückt wird. Die Ausführung der Range-Funktion kann in Listenform ausgedrückt werden.

L = [&#39;Adam&#39;, &#39;Lisa&#39;, &#39;Bart&#39;, &#39;Paul&#39;]
L[0:3]
L[:3]
L[1:3]
L[:]
L[::2]
String-Slice

L[-2:]
L[-3:-1]
L[-4:-1:2]
Iteration
L = range(1, 101)
L[-10:]
L[4::5][-10:]

Pythons for-Schleife kann nicht nur für Listen oder Tupel, sondern auch für jedes andere iterierbare Objekt verwendet werden.

Die iterative Operation gilt für eine Menge. Unabhängig davon, ob die Menge geordnet oder ungeordnet ist, können wir mithilfe einer for-Schleife immer jedes Element der Menge nacheinander herausnehmen.

Eine Menge bezieht sich auf eine Datenstruktur, die eine Menge von Elementen enthält, einschließlich:

def firstCharUpper(s):
    return s[0:1].upper() + s[1:]

print(firstCharUpper(&#39;hello&#39;))

Geordnete Menge: Liste, Tupel, Str und Unicode;

Ungeordnete Menge: set

    Ungeordnete Menge mit Schlüssel-Wert-Paaren: dict
  • Indexiteration

    Für geordnete Mengen werden Elemente indiziert. Was ist, wenn wir den Index in einer for-Schleife erhalten möchten? Die Methode besteht darin, die Funktion enumerate() zu verwenden.
  • L = [&#39;Adam&#39;, &#39;Lisa&#39;, &#39;Bart&#39;, &#39;Paul&#39;]
    for index, name in enumerate(L):
        print(index+1, &#39;-&#39;, name)
    
    myList = zip([100,20,30,40],L);
    for index, name in myList:
        print(index, &#39;-&#39;, name)

    迭代dict的value

    d = { &#39;Adam&#39;: 95, &#39;Lisa&#39;: 85, &#39;Bart&#39;: 59 }
    print(d.values())
    for v in d.values():
        print(v)

    PS:Python3.x中,dict的方法dict.keys(),dict.items(),dict.values()不会再返回列表,而是返回一个易读的“views”。这样一来,k = d.keys();k.sort()不再有用,可以使用k = sorted(d)来代替。
    同时,dict.iterkeys(),dict.iteritems(),dict.itervalues()方法不再支持。

    迭代dict的key和value

    d = { &#39;Adam&#39;: 95, &#39;Lisa&#39;: 85, &#39;Bart&#39;: 59 }
    for key, value in d.items():
        print(key, &#39;:&#39;, value)

    列表生成

    一般表达式

    L = [x*(x+1) for x in range(1,100)]
    print(L)

    复杂表达式

    d = { &#39;Adam&#39;: 95, &#39;Lisa&#39;: 85, &#39;Bart&#39;: 59 }
    def generate_tr(name, score):
        if score >=60:
            return '<tr><td>%s</td><td>%s</td></tr>' % (name, score)
        else:
            return '<tr><td>%s</td><td style="color:red">%s</td></tr>' % (name, score)
    
    tds = [generate_tr(name,score) for name, score in d.items()]
    print('<table border="1">')
    print('<tr><th>Name</th><th>Score</th><tr>')
    print('\n'.join(tds))
    print('</table>')

    条件表达式

    L = [x * x for x in range(1, 11) if x % 2 == 0]
    print(L)
    def toUppers(L):
        return [x.upper() for x in L if isinstance(x,str)]
    
    print(toUppers(['Hello', 'world', 101]))

    多层表达式

    L = [m + n for m in 'ABC' for n in '123']
    print(L)
    L = [a*100+b*10+c for a in range(1,10) for b in range(0,10) for c in range(1,10) if a==c]
    print(L)

    后记

    至此,Python基础结束。接下来,爬虫飞起!

    更多Python,基础相关文章请关注PHP中文网!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn