首頁  >  文章  >  後端開發  >  Python變數的定義和運算子如何使用

Python變數的定義和運算子如何使用

王林
王林轉載
2023-05-19 08:04:051230瀏覽

    常數與表達式

    #1.簡單引入

    我們可以先簡單來看Python的加減乘除

    print(1 + 2 + 5)
    print(1 + 2 * 5)
    print(1 + 2 - 5)
    print(1 + 2 / 5)
    # 运行结果
    8
    11
    -2
    1.4

    我們發現加減乘和其它語言基本每區別,但是除法在其它語言比如C/Java中整數除以整數結果還是整數,也就是小數部分會被截斷,但是在Python中不會被截斷,這樣更符合人的日常計算的直覺

    • print 是一個Python 內建的函數

    • 可以使用- * / ( ) 等運算子進行算術運算. 先算乘除, 後算加減

    • 運算子和數字之間, 可以沒有空格, 也可以有多個空格. 但是一般習慣上寫一個空格(比較美觀)

    2. 變數的命名規則

    • 變數必須由數字、字母和底線構成,不能包含其它特殊符號,且不能以數字開頭

    • 變數名稱不能和關鍵字衝突

    • 在Python中,變數名是區分大小寫的

    • 變數命名建議使用駝峰命名法(除第一個單字其它單字第一個字母用大寫),或是蛇形名命名法(用底線分割多個字)

    userName = '驼峰命名法'
    user_name = "蛇形命名法"
    _test = 10

    3. 變數的型別

    Python和C/Java不同,在定義變數的時候不需要顯示的指定變數的類型,在賦值的時候自動就會確定類型

    1)整數
    tmp = 10
    print(type(tmp))
    # 运行结果
    <class &#39;int&#39;>

    type是Python內建的函數,可以使用type來查看一個變數的類型注意:和C/ Java等語言不同,Python的int型別變量,能表示的資料範圍是沒有上限的,只要記憶體夠,理論上可以表示無限大小的數

    tmp = 1234567891011121314
    print(tmp)

    因為Python的int是可以根據要表示的資料大小自動擴容,所以Python就沒有像long、byte/short這些類型了

    2)浮點數
    tmp = 3.14
    print(type(tmp))
    # 运行结果
    <class &#39;float&#39;>

    注意:和C/Java語言不同,Python的小數只有float一種類型,沒有double類型,但實際上python相當於C/Java的double,表示的是雙精度浮點數(佔8個位元組)

    3)字串
    str1 = &#39;hello&#39;str2 = "world"print(type(str1))print(str1)print(str2)# 运行结果<class &#39;str&#39;>helloworldastr1 = &#39;hello&#39;
    str2 = "world"
    print(type(str1))
    print(str1)
    print(str2)
    # 运行结果
    <class &#39;str&#39;>
    hello
    world

    在python中,字串用單引號或雙引號引起來,這兩者是每有啥區別

    但是出現了字串中出現了單引號,就可以嵌套了

    str3 = "hello:&#39;java&#39;"
    str4 = &#39;hello: "python"&#39;
    print(str3)
    print(str4)
    # 运行结果
    hello:&#39;java&#39;
    hello: "python"

    在Python中還有一個三引號,裡面可以包含單引號和雙引號

    str3 = &#39;&#39;&#39; test "hello:&#39;java&#39;"&#39;&#39;&#39;
    str4 = """ test "hello:&#39;java&#39; """
    print(str3)
    print(str4)
    # 运行结果
     test "hello:&#39;java&#39;"
     test "hello:&#39;java&#39; 
    str3 = "&#39;&#39;&#39;test &#39;&#39;&#39;"
    str4 = &#39;""" test """&#39;
    print(str3)
    print(str4)
    # 运行结果
    &#39;&#39;&#39;test &#39;&#39;&#39;
    """ test """

    求字符長度在Python中通過內置函數len求字符串的長度

    str1 = &#39;hello&#39;
    str2 = "world"
    print(len(str1))
    print(len(str2))
    str3 = "&#39;&#39;&#39;test &#39;&#39;&#39;"
    str4 = &#39;""" test """&#39;
    print(len(str3))
    print(len(str4))
    # 运行结果
    5
    5
    11
    12

    字符串拼接注意:在Python中只能字串和字元進行拼接,拼接其它類型的變數會報錯

    str1 = &#39;hello&#39;
    str2 = "world"
    print(str1 + str2)
    print(str2 + str1)
    # 运行结果
    helloworld
    worldhello
    4)布林類型

    布林類型是一個特殊的型別, 取值只有兩種, True (真) 和False (假)

    a = True
    b = False
    print(type(a))
    print(type(b))
    # 运行结果
    <class &#39;bool&#39;>
    <class &#39;bool&#39;>

    注意事項 如果拿布爾類型和整數或浮點數類型進行運算那麼,True表示1,False表示0.

    4. 動態型別特性

    在Python 中, 一個變數是什麼型別, 是可以在「程式運作」 過程中改變的. 這個特性稱為「動態型別」

    tmp = 10
    print(type(tmp))
    tmp = &#39;test&#39;
    print(type(tmp))
    tmp = False
    print(type(tmp))
    # 运行结果
    <class &#39;int&#39;>
    <class &#39;str&#39;>
    <class &#39;bool&#39;>

    5. 顯示指定類型

    雖然在Python不用手動指定類型,但也可以顯示的指定類型

    a: int = 10
    b: str = &#39;str&#39;
    c: float = 3.14

    註解

    1. 行註解

    在Python中# 開頭的行都是註解

    # 这是第一行注释
    # 这是第二行注释

    2. 文檔字串

    使用三引號引起來的稱為「文檔字串」, 也可以視為是一種註解.

    • 可以包含多行內容,

    • #一般放在檔案/函數/類別的開頭

    • “”" 或‘’’ 皆可(等價)

    """
    这
    是
    多行注释
    """
    '''
    这
    也是多行注释
    '''

    輸入輸出

    1.透過控制台輸出

    前面已經說了使用Python內建函數print進行把資料輸出到控制台

    number = 10
    tmp = False
    print(number)
    print(tmp)
    # 输出
    10
    False

    更多的時候, 我們希望能夠輸出的內容是混合了字串和變數的

    範例

    name = &#39;张三&#39;
    age = 18
    print(f"name = {name}" f&#39;age = {age}&#39;)
    # 运行结果
    name = 张三age = 18
    • 使用f 作為前綴的字串, 稱為f-string

    • 裡面可以使用{ } 來內嵌一個其他的變數/表達式

    2. 透過控制台輸入

    python 使用input 函數, 從控制台讀取使用者的輸入

    tmp = input()
    print(tmp)

    或有提示的輸入

    name = input(&#39;请输入姓名:&#39;)
    age = input(&#39;请输入年龄:&#39;)
    print(f&#39;name = {name}&#39;)
    print(f&#39;age = {age}&#39;)
    # 运行结果
    请输入姓名:张三
    请输入年龄:18
    name = 张三
    age = 18
    • input 的參數相當於一個「提示訊息」, 也可以沒有.

    • input 的回傳值就是使用者輸入的內容. 是字串型別

    因為輸入數據,預設都是字串型的,如果需要就要進行強制型別zhuangh

    num1 = int(input("请输入第一个数字:"))
    num2 = int(input("请输入第二个数字:"))
    print(f&#39;num1 + num2 = {num1 + num2}&#39;)

    運算子

    1. 算數運算子

    在Python中有 - * / % ** // 七種運算子

    #注意事項1: 0是不能作為除數的,如果作為除數就會拋出異常

    print(5/0)

    注意事項2: 在Python中整數除以整數得到的結果可能會是小數,因為不會發生截斷

    print(9/4)
    # 执行结果
    2.25

    注意事项3: 在Python中 // 这个符号,等同于C/Java中的除号,就是整数除以整数就会得到整数,会发生截断

    print(9//4)
    运行结果
    2

    注意事项4: **是次方的意思,比如 3**4 就表示的是 34,它也可以表示小数次方,比如 9**0.5 就表示为对9开方

    print(3**4)
    print(9**0.5)
    运行结果
    81
    3.0

    注意事项5: 正对负数取余,结果会是正数

    2. 关系运算符

    关系运算符就是用来比较两个操作数的大小是否相等的,c1743839dbf03bcf8100b6aa1e69ccf2e41e9ffb4fa1bfd6844985de5647f5f4===!=

    关系运算符返回的是布尔值,如果表达式为真就返回True如果表达式为假就返回False

    a = 10
    b = 15
    print(a > b)
    print(a < b)
    print(a >= b)
    print(a <= b)
    运行结果
    False
    True
    False
    True

    关系运算符不但可以针对数字进行比较,还能够比较字符串,可以比较字符相等

    a = &#39;hello&#39;
    b = &#39;hello&#39;
    print(a == b)
    运行结果
    True

    还可以比较字符串大小,比较字符串大小是通过字典序来比较的,首先看首字母在字母表上的顺序,谁小,谁就排在前面,如果首字母相同,就一次比较第二字母、第三个字母…

    a = &#39;abcd&#39;
    b = &#39;abce&#39;
    print(a > b)
    print(a < b)
    # 运行结果
    False
    True

    注意事项 对于浮点数来说,使用 ==进行比较相等时存在一定的风险的,因为浮点数在内存中的存储和表示,是可能存在误差的,这样的误差在进行算数运算的时候就可能被放大,从而导致 ==的判断出现误判

    a = 0.1 + 0.2
    b = 0.3
    print(a == b)
    print(a)
    print(b)
    运行结果
    False
    0.30000000000000004
    0.3

    对于浮点数正确的比较方式:就是不在严格比较相等,而是判定它的差值是否小于允许的误差范围以内

    a = 0.1 + 0.2
    b = 0.3
    print(-0.000001 < a-b < 0.000001)
    运行结果
    True

    3. 逻辑运算符

    在Python中逻辑运算符为and or not

    • and 并且:两端为True则为True,一端为False则为False

    • or 或者:两端都为False则为False,否则为True

    • not 逻辑取反:本身为True,取反为False,本身为False取反为True

    a = 10
    b = 20
    c = 30
    print(b > a and b > c)
    print(b > a or b > c)
    print(not a > b)
    运行结果
    False
    True
    True

    Python一种特殊写法 a 4c0cdbb2680faf2efdb07c2cfa990c00>) 等

    以上是Python變數的定義和運算子如何使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

    陳述:
    本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除