Heim > Backend-Entwicklung > Python-Tutorial > Sechs Aspekte zur Erläuterung der Codestruktur von Python

Sechs Aspekte zur Erläuterung der Codestruktur von Python

零到壹度
Freigeben: 2018-04-03 10:39:44
Original
1582 Leute haben es durchsucht

Dieser Artikel stellt hauptsächlich die sechs Aspekte der Interpretation der Codestruktur von Python vor. Jetzt werde ich ihn mit Ihnen teilen und als Referenz geben. Kommen Sie und werfen Sie einen Blick mit dem Editor

1. Kommentare

Verwenden Sie # oder dreifache Anführungszeichen, um Kommentare abzugeben.


2. Verbinden

Umgekehrt verwenden Slash-Verbindung.

>>> alphabet = 'abcdefg' + \ 
...                         'hijklmnop' + \ 
...                         'qrstuv' + \ 
...                         'wxyz'
Nach dem Login kopieren

Unter der Voraussetzung, dass Python-Ausdrücke viele Zeilen belegen, sind auch Zeilenverbinder erforderlich.

>>> 1 + 2 + \
... 3
6
Nach dem Login kopieren


3. if, elif und else

Gewöhnlich Operatoren:

Arithmetische Operatoren:

Vergleichsoperatoren:

Zuweisungsoperatoren:

Logische Operatoren:

Mitgliedschaftsoperatoren:

Identitätsoperatoren:

Bitweise Operatoren:

*Bitweise Inversionsoperationsregeln (bitweise Inversion plus 1) Detaillierte Erklärunghttp://blog .csdn.net/wenxinwukui234/article/details/42119265

Operatorpriorität:

input() input ist ein String;

Konvertierung zwischen String- und Integer-Typen——int( ) str()

Kurzschlussprinzip:

und Nicht gehen, wenn das erste falsch ist. Wenn das zweite beurteilt wird, wird es direkt falsch sein; > oder Wenn die erste wahr ist, wird die zweite nicht beurteilt und sie wird direkt wahr sein.

wird als falsch betrachtet:

< td style="border:1px solid rgb(204,204,204);">Boolean

< td style="border:1px solid rgb(204,204,204);"><🎜>()<🎜>

布尔

False

null类型

None

整型

0

浮点型

0.0

空字符串

''

空列表

[]

空元组

()

空字典

{}

空集合

set()

False< 🎜>< /td>
<🎜>null type<🎜><🎜>Keine<🎜>
<🎜>Integer<🎜>< /td>< td style="border:1px solid rgb(204,204,204);"><🎜>0<🎜>
< 🎜>Gleitkomma<🎜><🎜>0,0<🎜>
<🎜>Leere Zeichenfolge <🎜><🎜>'' <🎜>
<🎜>Leere Liste<🎜><🎜>[]<🎜>
<🎜>Leeres Tupel< 🎜>
<🎜>Leeres Wörterbuch<🎜><🎜>{}<🎜>
<🎜>Leere Sammlung<🎜><🎜 >set()<🎜>



四、使用while进行循环

使用if、elif和else条件判断的例子是自顶向下执行的,但是有时候我们需要重复一些操作——循环。

>>> count = 1
>>> while count <= 5:
...     print(count)
...     count += 1
...
1
2
3
4
5
Nach dem Login kopieren

使用break跳出循环

>>> while True:
...     stuff = input("String to capitalize [type q to quit]:")
...     if stuff == &#39;q&#39;:
...             break
...     print(stuff.capitalize())
...
String to capitalize [type q to quit]:test
Test
String to capitalize [type q to quit]:darren chen
Darren chen
String to capitalize [type q to quit]:q
Nach dem Login kopieren

使用continue调到循环开始

while True:
    value = input(&#39;Integer ,please [q to quit]:&#39;)
    if value == &#39;q&#39;:
        break
    number = int(value)
    if number % 2 == 0:
        continue
    print(number,&#39;squared is&#39;,number*number)
    
Integer ,please [q to quit]:>? 1
1 squared is 1
Integer ,please [q to quit]:>? 2
Integer ,please [q to quit]:>? 3
3 squared is 9
Integer ,please [q to quit]:>? 5
5 squared is 25
Integer ,please [q to quit]:>? 6
Integer ,please [q to quit]:>? q
Nach dem Login kopieren

循环外使用else:

当while循环正常结束(没有使用break跳出),程序将进入到可选的else段 。

numbers = [1,3,5]
position = 0
while position < len(numbers):
    number = numbers[position]
    if number % 2 == 0:
        print(&#39;Found even number&#39;,number)
        break
    position += 1
else:
    print(&#39;No even number found&#39;)
...No even number found
Nach dem Login kopieren



五、使用for迭代

表、字符串、元组、字典、集合等都是Python中可迭代的对象。元组或列表在一次迭代过程中产生一项,而字符串迭代会产生一个字符。

word = &#39;Darren Chen&#39;
for i in word:
    print(i)
    
D
a
r
r
e
n
C
h
e
n
Nach dem Login kopieren

对一个字典(或字典的key()函数)迭代将返回字典中的键

home = {"man":&#39;chenda&#39;,&#39;woman&#39;:&#39;lvpeipei&#39;}
for i in home:
    print(i)
    
man
woman
Nach dem Login kopieren

想对值迭代,可以使用字典的values()

>>> for value in accusation. values(): 
...         print( value) 
...     
ballroom 
lead pipe
Nach dem Login kopieren

同while一样,可以使用break跳出循环,使用continue调到循环开始。

循环外使用else:

>>> cheeses = [] 
>>> for cheese in cheeses: 
...             print(&#39; This shop has some lovely&#39;, cheese) 
...             break 
...      else: # 没有 break 表示 没有 找到 奶酪 .
..              print(&#39; This is not much of a cheese shop, is it?&#39;) 
... 
This is not much of a cheese shop, is it?
Nach dem Login kopieren

使用zip()对多个序列进行并行迭代:

>>> days = [&#39;Monday&#39;, &#39;Tuesday&#39;, &#39;Wednesday&#39;] 
>>> fruits = [&#39;banana&#39;, &#39;orange&#39;, &#39;peach&#39;] 
>>> drinks = [&#39;coffee&#39;, &#39;tea&#39;, &#39;beer&#39;] 
>>> desserts = [&#39;tiramisu&#39;, &#39;ice cream&#39;, &#39;pie&#39;, &#39;pudding&#39;] 
>>> for day, fruit, drink, dessert in zip( days, fruits, drinks, desserts): 
...         print( day, ": drink", drink, "- eat", fruit, "- enjoy", dessert) 
... 
Monday : drink coffee - eat banana - enjoy tiramisu 
Tuesday : drink tea - eat orange - enjoy ice cream 
Wednesday : drink beer - eat peach - enjoy pie
Nach dem Login kopieren

使用zip()函数配对两个元组。函数的返回值既不是元组也不是列表,而是一个整合在一起的可迭代变量:

>>> english = &#39;Monday&#39;, &#39;Tuesday&#39;, &#39;Wednesday&#39; 
>>> french = &#39;Lundi&#39;, &#39;Mardi&#39;, &#39;Mercredi&#39;
>>> list( zip( english, french) ) 
[(&#39;Monday&#39;, &#39;Lundi&#39;), (&#39;Tuesday&#39;, &#39;Mardi&#39;), (&#39;Wednesday&#39;, &#39;Mercredi&#39;)]
#配合dict()函数和zip()函数的返回值就可以得到一本微型的词典:
>>> dict( zip( english, french) ) 
{&#39;Monday&#39;: &#39;Lundi&#39;, &#39;Tuesday&#39;: &#39;Mardi&#39;, &#39;Wednesday&#39;: &#39;Mercredi&#39;}
Nach dem Login kopieren

使用range()生成自然数序列

>>> for x in range( 0, 3): 
...         print( x) 
... 
0 
1 
2
>>> list( range( 0, 11, 2) ) 
[0, 2, 4, 6, 8, 10]
Nach dem Login kopieren


六、推导式

推导式是从一个或者多个迭代器快速简介地创建数据结构的一种方法。

列表推导式

>>> number_ list = list( range( 1, 6)) 
>>> number_ list 
[1, 2, 3, 4, 5]
>>> number_ list = [number for number in range( 1, 6)] 
>>> number_ list 
[1, 2, 3, 4, 5]
>>> number_ list = [number- 1 for number in range( 1, 6)] 
>>> number_ list 
[0, 1, 2, 3, 4]
>>> a_ list = [number for number in range( 1, 6) if number % 2 == 1] 
>>> a_ list
[1,3,5]
#嵌套循环
>>> rows = range( 1, 4) 
>>> cols = range( 1, 3) 
>>> cells = [(row, col) for row in rows for col in cols] 
>>> for cell in cells: 
...         print( cell) 
... 
(1, 1) 
(1, 2) 
(2, 1) 
(2, 2) 
(3, 1) 
(3, 2)
Nach dem Login kopieren

字典推导式

{ key_ expression : value_ expression for expression in iterable }
>>> word = &#39;letters&#39; 
>>> letter_ counts = {letter: word. count( letter) for letter in set( word)} 
>>> letter_ counts 
{&#39;t&#39;: 2, &#39;l&#39;: 1, &#39;e&#39;: 2, &#39;r&#39;: 1, &#39;s&#39;: 1}
Nach dem Login kopieren

集合推导式

>>> a_ set = {number for number in range( 1, 6) if number % 3 == 1} 
>>> a_ set 
{1, 4}
Nach dem Login kopieren

生成器推导式——元组是没有推导式的,其实,圆括号之间的是生成器推导式,它返回的是一个生成器对象。

>>> number_ thing = (number for number in range( 1, 6))
>>> type( number_ thing) 
< class &#39;generotor&#39;>
#可以直接对生成器对象进行迭代
>>> for number in number_ thing: 
...             print( number) 
... 
1 
2 
3 
4 
5
Nach dem Login kopieren

#通过对一个生成器的推导式调用list()函数,使它类似于列表推导式

>>> number_ list = list( number_ thing) 
>>> number_ list 
[1, 2, 3, 4, 5]
    一个生成器只能运行一
Nach dem Login kopieren

次。列表、集合、字符串和字典都存储在内存中,但是生成器仅在运行中产生值,不会被存下来,所以不能重新使用或者备份一个生成器。

如果想再一次迭代此生成器,会发现它被擦除了:

>>> try_ again = list( number_ thing) 
>>> try_ again 
[ ]
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSechs Aspekte zur Erläuterung der Codestruktur von Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage