Python 入门系列 —— 5. 三大变量类型介绍

多值赋给多变量

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

你可能感兴趣的:(python)