Heim >Backend-Entwicklung >Python-Tutorial >Analysieren Sie Beispiele für Variablen, Operatoren und Flusskontrolle in Python.

Analysieren Sie Beispiele für Variablen, Operatoren und Flusskontrolle in Python.

WBOY
WBOYnach vorne
2023-05-08 19:16:181306Durchsuche

    1. Zwei Möglichkeiten, Python-Programme auszuführen

    1. Interaktiv

    Geben Sie „python3“ im Terminal ein und geben Sie dann den Python-Code ein

    Analysieren Sie Beispiele für Variablen, Operatoren und Flusskontrolle in Python.

    2. Befehlszeile

    Geben Sie im Terminal „ ein python3-Textdateipfad“

    Analysieren Sie Beispiele für Variablen, Operatoren und Flusskontrolle in Python.

    2. Variablen

    1. Zusammensetzung der Variablen

    Variablen in Python müssen nicht deklariert werden. Jeder Variablen muss vor der Verwendung ein Wert zugewiesen werden. Die Variable wird erst erstellt, wenn der Variablen ein Wert zugewiesen wird.

    In Python ist eine Variable eine Variable, sie hat keinen Typ. Was wir „Typ“ nennen, ist der Typ des Objekts im Speicher, auf das sich die Variable bezieht.

    Das Gleichheitszeichen (=) wird verwendet, um Variablen Werte zuzuweisen.

    Die linke Seite des Gleichheitszeichenoperators (=) ist ein Variablenname und die rechte Seite des Gleichheitszeichenoperators (=) ist der in der Variablen gespeicherte Wert.

    Variablenname = Variablenwert.

    Variablennamen werden zum Empfangen von Variablenwerten verwendet

    name = 'nick' 
    age = 19

    2. Definitionsspezifikationen von Variablennamen

    • Variablennamen haben eine bestimmte Bedeutung

    • bestehen aus Zahlen/Buchstaben/Unterstrichen und können nicht aus Zahlen bestehen und Python-Schlüsselwörter, die mit einem Unterstrich beginnen, können nicht verwendet werden ', ' elif', 'else', 'außer', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

    • 3 Möglichkeiten zum Definieren von Variablen Eine Möglichkeit

    Kamelfall: NameOfNick

    Unterstrich: name_of_nick (empfohlen)

    • 4. Konstanten

      NameOfNick

    • 下划线:name_of_nickKonstante ist a Konvention und Standard werden Konstantennamen ausschließlich in Großbuchstaben definiert. kann tatsächlich geändert werden.

      AGE_OF_NICK = 19
      print(AGE_OF_NICK)
    • 3. Python-Variablenspeicherverwaltung

    Die Anzahl der Verweise auf den Variablenwert

    x = 257  # 257的引用计数为1
    y = x   # 257的引用计数为2
    del x  # 257的引用计数为1

    2. Wenn der Referenzzähler des Variablenwerts 0 ist, wird der Variablenwert angezeigt werden von Python automatisch entfernt. Die Ganzzahlen zwischen dem kleinen Ganzzahlpool

    [-5, 256] öffnen automatisch einen Speicher zum Speichern dieser Ganzzahlen, wenn der Python-Interpreter startet Ganzzahlen werden nicht gelöscht, da die Referenzanzahl 0 ist.

    4. Speicheradresse und Datentyp

    Das Abrufen der ID einer Variablen kann als die Adresse der Variablen im Speicher verstanden werden.

    x = 10
    print(x)  # 获取变量的变量值
    print(id(x) )  # 获取变量的id,可以理解成变量在内存中的地址
    print(type(x) )  # 获取变量的数据类型,下章会详细介绍数据类型

    Ergebnis:

    10

    8790885504960

    5. Variablen mit gleichen IDs müssen gleiche Werte haben, da sie auf dieselbe Speicheradresse verweisen;

    Wert Gleiche Variablen, IDs sind nicht unbedingt gleich.

    x = 11
    y = x
    z = 11
    print(x == y)  # True
    print(x is y)  # True
    print(x is z)  # True,整数池的原因
    
    x = 255
    z = 255
    print(id(x) is id(z) )  # False

    4. Ausgefallene Zuweisung

    Das folgende Beispiel erstellt ein ganzzahliges Objekt mit dem Wert 10 und weist den drei Variablen den gleichen Wert zu.
    a = b = c = d = 10 
    print(f'a:{a}, b:{b}, c:{c}, d:{d}') #a:10, b:10, c:10, d:10

    2. Kreuzzuweisung

    # 交叉赋值
    x = 10
    y = 20
    
    x, y = y, x
    print(x, y) #20 10
    
    # 相当于使用临时变量
    x = 10 
    y = 20
    
    temp = x
    x = y
    y = temp
    
    print(x, y) #20 10

    3. Mehrfache Variablenzuweisung

    Sie können auch mehrere Variablen für mehrere Objekte angeben. Zum Beispiel:

    a, b, c = 1, 2, "runoob"

    Im obigen Beispiel werden zwei ganzzahlige Objekte 1 und 2 den Variablen a und b zugewiesen, und das Zeichenfolgenobjekt „runoob“ wird der Variablen c zugewiesen.

    Schreiben Sie eine Fibonacci-Reihe Fibonacci-Reihe:

    # 两个元素的总和确定了下一个数
    a, b = 0, 1
    while b < 10:
        print(b, end=&#39;,&#39;)
        a, b = b, a+b
    # 1,1,2,3,5,8,

    5. Interagieren Sie mit dem Benutzer

    name = input(&#39;请输入你的姓名:&#39;)
    pwd = input(&#39;请输入你的密码:&#39;)
    
    print(type(name))
    print(type(pwd))
    
    # 请输入你的姓名:a
    # 请输入你的密码:1
    # 
    # &#39;str&#39;>

    Egal, ob der von uns eingegebene Wert ein numerischer Typ, ein String-Typ oder ein Listentyp ist, der empfangene Wert der Eingabe ist ein String Typ. 6. Formatierte Ausgabe 2. Formatierung

    {}: Daten eines beliebigen Datentyps empfangen. 1. Format: }

    :

    <.pr>

    • Handbuch
    • Symbol

    • gepolstert ein charakteristisch maximale Ausgabelänge
    • Ganzzahltyp: b (binär),c,d,o,x,Xb(二进制),c,d,o,x,X

    • 浮点数类型:e,E,f,%(百分数)

    Gleitkommatyp: e,E,f,% (Prozentsatz) 🎜🎜🎜
    3、python字符串格式化符号: 
    • %c: 格式化字符及其ASCII码

    • %s: 格式化字符串

    • %d: 格式化整数

    • %u: 格式化无符号整型

    • %o: 格式化无符号八进制数

    • %x: 格式化无符号十六进制数

    • %X: 格式化无符号十六进制数(大写)

    • %f: 格式化浮点数,可指定小数点后的精度

    • %e: 用科学计数法格式化浮点数

    • %E: 作用同%e,用科学计数法格式化浮点数(大写)

    • %g: %f和%e的简写

    • %G: %f 和 %E 的简写

    • %p: 用十六进制数格式化变量的地址

    print("{0: =^20 }".format("PYTHON"))  # &#39;=======PYTHON=======&#39; 使用等号,居中对齐
    print("{0: *>20 }".format("BIT"))  # &#39;*****************BIT&#39; 使用星号,文字右对齐
    print("{:10}".format("BIT"))  # &#39;BIT       &#39; 总长度为10,不足以空格补足。在:后传入一个整数, 可以保证该域至少有这么多的宽度。 用于美化表格时很有用。
    print("{0: ,.2f}".format(12345.6789))  # &#39;12,345.68&#39; 使用千分符,同时保留到小数点后两位
    print("{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(425))  # &#39;110101001,Ʃ,425,651,1a9,1A9&#39;
    print("{0:e},{0:E},{0:f},{0:%}".format(3.14))  # &#39;3.140000e+00,3.140000E+00,3.140000,314.000000%&#39;

    可以使用 bin,oct,hex 可输出数字的二进制,八进制,十六进制形式,例如:

    a = 0b111100
    print(bin(a))
    # &#39;0b111100&#39;
    print(oct(a))
    # &#39;0o74&#39;
    print(hex(a))
    # &#39;0x3c&#39;
    4、字段格式化

    字典, 然后使用方括号 [] 来访问键值 :

    table = {&#39;Google&#39;: 1, &#39;Runoob&#39;: 2, &#39;Taobao&#39;: 3}
    print(&#39;{0[Runoob]:d}; {0[Google]:d}; {0[Taobao]:d}&#39;.format(table))
    # 2; 1; 3

    也可以通过在 table 变量前使用 ** 来实现相同的功能:

    table = {&#39;Google&#39;: 1, &#39;Runoob&#39;: 2, &#39;Taobao&#39;: 3}
    print(&#39;{Runoob:d}; {Google:d}; {Taobao:d}&#39;.format(**table))
    # 2; 1; 3

    3、 f-string字面量格式化

    f-string 是 python3.6 之后版本添加的,称之为字面量格式化字符串,是新的格式化字符串的语法。

    在字符串前面加上f或F,后面跟着字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去。

    用了这种方式明显更简单了,不用再去判断使用 %s,还是 %d。

    name = "nick"
    age = 19
    print(F"Hello, {name}. You are {age}.")#Hello, nick. You are 19.
    
    print(f&#39;{age*2}&#39;)#38
    salary = 6.6666
    print(f&#39;{salary:.2f}&#39;)#6.67
    
    w = {&#39;name&#39;: &#39;Runoob&#39;, &#39;url&#39;: &#39;www.runoob.com&#39;}
    print(f&#39;{w["name"]}: {w["url"]}&#39;)
    # &#39;Runoob: www.runoob.com&#39;

    在 Python 3.8 的版本中可以使用 = 符号来拼接运算表达式与结果:

    x = 1
    print(f&#39;{x+1}&#39;)   # Python 3.6
    # 2
    
    x = 1
    print(f&#39;{x+1=}&#39;)   # Python 3.8
    # &#39;x+1=2&#39;

    七、基本运算符

    1、 算术运算符

    +、 - 、* 、/ 、 //、 % 、**

    # 除
    print(10 / 3)  # 3.3333333333333335
    
    # 除,只取整数部分
    print(10 // 3)  # 3
    print(10 // 4)  # 2
    
    # %:取余
    print(10 % 3)  # 1
    
    # **,幂
    print(10 ** 3)  # 1000

    2、 逻辑运算符(运算符中优先级最低,即最后运算)

    and、 or、 not 。

    优先级:not>and>or

    # 从左到右的方式找到逻辑运算符,找到逻辑运算符的左边,左边成立,再去找到逻辑运算符的右边
    print(3 > 3 and 1 > 2 or 2 > 1)  # False

    3、 比较运算符

    >、 >=、 运算符,可以使用 != 代替)

    4、 赋值运算符

    =、 +=、 -=、 *=、 /=、 //=、 **=、 %=、:=(海象运算符,可在表达式内部为变量赋值。Python3.8 版本新增运算符。)

    5、 身份运算符,比较两个对象的存储单元。

    is、 is not

    is和==的区别:

    • is:用于判断两个变量引用对象是否为同一个(是否在同一块内存空间中),

    • ==:用于判断引用变量的值是否相等。

    6、 位运算符

    • & : 按位与运算符

    • | : 按位或运算符

    • ^: 按位异或运算符

    • ~ : 按位取反运算符

    • >> : 右移动运算符

    a = 60  # 60 = 0011 1100
    b = 13  # 13 = 0000 1101
    c = 0
    
    c = a & b
    print( c)# 12 = 0000 1100
    c = a | b
    print(c)# 61 = 0011 1101
    c = a ^ b
    print( c)# 49 = 0011 0001
    c = ~a
    print( c)# -61 = 1100 0011
    c = a << 2
    print(c)# 240 = 1111 0000
    c = a >> 2
    print(c)# 15 = 0000 1111

    7、 成员运算符

    in、 not in

    包括字符串,列表或元组等

    a = 10
    b = 20
    list = [1, 2, 3, 4, 5]
    
    print(a in list) # false

    8、 运算符优先级(略)

    如果需要某个运算符优先运算,则加个括号,使用a and b is c == d的是傻逼

    9、 解压缩

    hobby_list = [&#39;read&#39;,&#39;run&#39;,&#39;sleep&#39;,&#39;fishing&#39;,&#39;piao&#39;]
    
    # 如果取第2-3个爱好
    _,hobby2,hobby3,*_ = hobby_list
    
    print(hobby2, hobby3) #run sleep

    字典也是可以的,但是字典解压缩的是key。

    info = {&#39;name&#39;: &#39;nick&#39;, &#39;age&#39;: 18}
    x, y = info
    print(x, y) #name age

    八、流程控制

    1、 if判断

    Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else

    注意:

    • 1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。

    • 2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。

    • 3、在Python中没有switch – case语句。

    # if
    if 条件:
        代码块
    
    # if...else
    if 条件:
        代码块
    else:
        代码块
    
    # if...elif....elif...else
    if 条件:
        代码块
    elif 条件: 
        代码块
    elif 条件:
        代码块
    
    ...(可以写任意个elif)
    
    else:
        代码块

    2、 while循环

    同样需要注意冒号和缩进。另外,在 Python 中没有 do..while 循环。

    #while
    while 条件:
        代码块
    
    #while + break
    while 条件:
        代码块
        break  # 结束本层循环,跳出循环
    
    # while + continue
    while 条件:
        代码块
        if 条件:
            代码块
            cotinue  # 不执行下面代码,然后继续循环,即跳出本次循环
        代码块
    
    #while + else
    while 条件:
        代码块
    else:
        print(&#39;如果我没有被break,我就会被打印出来&#39;)

    实例:

    n = 1
    while n < 4:
        print(n)
        n += 1
    else:
        print("a")
    # 1,2,3,a

    使用循环嵌套来实现99乘法法则:

    # 外边一层循环控制行数
    # i是行数
    i = 1
    while i <= 9:
        # 里面一层循环控制每一行中的列数
        j = 1
        while j <= i:
            mut = j * i
            print("%d*%d=%d" % (j, i, mut), end="  ")
            j += 1
        print("")
        i += 1
    # 1*1=1  
    # 1*2=2  2*2=4  
    # 1*3=3  2*3=6  3*3=9  
    # 1*4=4  2*4=8  3*4=12  4*4=16  
    # 1*5=5  2*5=10  3*5=15  4*5=20  5*5=25  
    # 1*6=6  2*6=12  3*6=18  4*6=24  5*6=30  6*6=36  
    # 1*7=7  2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49  
    # 1*8=8  2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64  
    # 1*9=9  2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81

    3、for循环

    for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

    for循环的循环次数受限于容器类型的长度,而while循环的循环次数需要自己控制。

    #for
    for i in range/str/list/tuple/dict/set(可迭代对象):
        print(i)
    
    #for + break
    for i in range/str/list/tuple/dict/set(可迭代对象):
        print(i)
        break  # 结束本层循环
    
    # for + continue
    for i in range/str/list/tuple/dict/set(可迭代对象):
        print(i)
        if 条件:
            continue  # 结束本次循环,即不执行下面代码,继续循环
        代码块
    
    #for + else
    for i in range/str/list/tuple/dict/set(可迭代对象):
        print(i)
    else:
        print(&#39;如果我没有被break,我就会被打印出来&#39;)

    实例:

    # for循环按照索引取值
    
    name_list = [&#39;nick&#39;, &#39;jason&#39;, &#39;tank&#39;, &#39;sean&#39;]
    for i in range(len(name_list)):
        print(i, name_list[i])
        
    # 0 nick
    # 1 jason
    # 2 tank
    # 3 sean

    九、range()函数

    如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列,例如:

    for i in range(5):
        print(i)
    # 0 1 2 3 4

    你也可以使用range指定区间的值:

    for i in range(5, 9):
        print(i)
    # 5 6 7 8

    也可以使range以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做'步长'):

    for i in range(0, 10, 3):
        print(i)
    #   0 3 6 9

    负数:

    for i in range(-10, -100, -30):
        print(i)
    # -10 -40 -70

    您可以结合range()和len()函数以遍历一个序列的索引,如下所示:

    a = [&#39;Google&#39;, &#39;Baidu&#39;, &#39;Runoob&#39;, &#39;Taobao&#39;, &#39;QQ&#39;]
    for i in range(len(a)):
        print(i, a[i])
    # 0 Google 1 Baidu 2 Runoob 3 Taobao 4 QQ

    还可以使用range()函数来创建一个列表:

    a = list(range(5))
    print(a)
    # [0, 1, 2, 3, 4]

    实例:

    1-100 的和:

    print(sum(range(101)))

    十、pass 语句

    Python pass是空语句,是为了保持程序结构的完整性。

    pass 不做任何事情,一般用做占位语句,如下实例

    while True:
        pass  # 等待键盘中断 (Ctrl+C)

    最小的类:

    class MyEmptyClass:
        pass

    Das obige ist der detaillierte Inhalt vonAnalysieren Sie Beispiele für Variablen, Operatoren und Flusskontrolle in Python.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Stellungnahme:
    Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen