Python 入門系列 —— 5. 三大變數型別介紹

一線碼農發表於2021-01-02

多值賦給多變數

Python 允許在一行中將多個值賦給多個變數。


x, y, z = "Orange", "Banana", "Cherry"
print(x)
print(y)
print(z)


---- output ------

PS E:\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dream/markdown/python/app/app.py
Orange
Banana
Cherry

單值賦給多個變數

在一行中可以將一個值同時賦給多個變數。


x = y = z = "Orange"
print(x)
print(y)
print(z)

肢解集合

如果你有一個 list 或 tuple 集合,python 允許你將集合的值肢解到多個變數中。


fruits = ["apple", "banana", "cherry"]
x, y, z = fruits
print(x)
print(y)
print(z)

----- output -------

PS E:\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dream/markdown/python/app/app.py
apple
banana
cherry

列印變數

Python 使用 print 語句進行變數列印,還可以使用 + 將 text 和 變數 進行連線。


x = "awesome"
print("Python is " + x)

當然也可以使用 + 對兩個變數進行連線。


x = "Python is "
y = "awesome"
z =  x + y
print(z)

對於 數字型 ,這就是一個數學運算,如下所示:


x = 5
y = 10
print(x + y)

如果用 + 把字串和數字組合起來,Python 將會丟擲一個錯誤。


x = 5
y = "John"
print(x + y)


----- output -----

PS E:\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dream/markdown/python/app/app.py
Traceback (most recent call last):
  File "e:/dream/markdown/python/app/app.py", line 3, in <module>
    print(x + y)
TypeError: unsupported operand type(s) for +: 'int' and 'str'

全域性變數

如果一個變數定義在函式之外,那麼它就是 全域性變數,全域性變數可以被任何地方所呼叫,函式內或者函式外。


x = "awesome"

def myfunc():
  print("Python is " + x)

myfunc()

如果你在函式內部建立了一個和 全域性變數 一樣名字的變數,那麼函式內的變數會作為區域性變數,全域性變數還是原樣在那,只是在函式體內預設情況下你是無法訪問的。


x = "awesome"

def myfunc():
  x = "fantastic"
  print("Python is " + x)

myfunc()

print("Python is " + x)

----- output ----


PS E:\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dream/markdown/python/app/app.py
Python is fantastic
Python is awesome

global 關鍵詞

通常情況下,在函式體內建立一個變數,這個變數就是區域性的,也就是說只能在函式內訪問,有時候你腦洞大開,能不能在函式體內建立一個全域性變數呢? 可以的哈,用 global 關鍵詞即可。


def myfunc():
  global x
  x = "fantastic"

myfunc()

print("Python is " + x)


---- output ----

PS E:\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dream/markdown/python/app/app.py
Python is fantastic

同樣,你也可以在函式體內用 global 去改變全域性變數的值。


x = "awesome"

def myfunc():
  global x
  x = "fantastic"

myfunc()

print("Python is " + x)

譯文連結: https://www.w3schools.com/python/python_variables_names.asp

更多高質量乾貨:參見我的 GitHub: python

相關文章