在本教程中,我将介绍和解释Python中如何处理变量。
变量是所有编程语言的重要组成部分,Python也不例外。
在 Python 中使用变量来存储各种信息,从字符串到数字。
在本教程中,我将向您解释Python编程语言中变量的几个方面。
关于Python,有一点很重要,那就是每个变量也被认为是一个对象,这是由于Python是完全面向对象的。
Python中的变量名
应该学习的第一件事就是在Python中应该如何命名变量。
像大多数编程语言一样,不能随便用字符串作为变量名。
在 Python 中命名变量时,必须遵循一些不同的规则。这些规则非常简单,应该很容易理解。
不能用数字开始一个 Python 变量。只能用字母或下划线来开始一个变量名。
例如,0x是一个无效的变量名,但x0和_0x被认为是有效的。
一个Python变量必须只包含大写字母和小写字母 ( A-Z a-z )、数字 ( 0 – 9 )和下划线字符 ( _ )。
为了展示Python中有效的变量名是什么样的,我在下面列出了一些例子。
- Labno3
- labno3
- Lab_No_3
- lab_no_3
根据Python的变量名规则,所有这些变量都被认为是有效的。
原因是名字不以数字开头,只包含字母数字和下划线字符。
Python中的变量名是区分大小写的。两个名字相同但大小写不同的变量被认为是两个不同的变量。
在Python中声明变量
在Python中声明变量很容易,不必担心其他语言比较严格的事情。
只要你给一个变量赋值,就会被动态地创建。
x = 5
y = "pimylifeup"
在定义变量时,不需要担心声明一个特定的类型。
在Python中,当一个值被分配给变量时,解释器动态地计算出数据类型。
变量的数据类型甚至可以在其声明后改变。
例如,下面我创建了一个名为x的变量,其中包含一个字符串,然后将其改变为一个数值,从而使数据类型从字符串转换为整数。
x = "PiMyLifeUp" #First assign the 'x' variable a string
type(x) #Output the data type of our 'x' variable
x = 43 #Now assign it a integer value
type(x) #Output its type again
使用上面的Python小例子,可以看到解释器如何自动改变变量的类型。
使用type()函数来输出变量的类型。
可以检查上面的代码片段的输出,看到数据类型如何随着变量的变化而变化。
>>> x = "PiMyLifeUp"
>>> type(x)
<type 'str'>
>>> x = 43
>>> type(x)
<type 'int'>
为多个变量分配多个值
如果想在一行定义多个变量的值,可以在Python中定义。
这样做的方法是用逗号”, “隔开变量,然后是等号,然后是要分配的值,用逗号隔开。
变量的顺序与赋值的顺序是一样的。
例如,如果想给三个变量(a、b、c)分别赋值(”Apple”、”Banana”、”Cherry”),可以在一行中做如下操作。
a, b, c = "Apple", "Banana", "Cherry"
请注意,只有在不影响代码可读性的情况下,才应该做这样的事情。请记住,较长的代码不一定是坏代码。
给多个变量分配一个值。
Python 还允许你在一行上给多个变量赋一个值。
例如,如果想将多个值重置为0,这种行为可能很有用。
要为多个变量赋值,需要使用等号(=)来分隔每个变量。最后的等号应该指向您要分配给变量的值。
例如,如果想给三个独立变量(a、b、c)赋值 “Lime”,可以通过以下操作完成。
a = b = c = "Lime"
在Python中输出变量
可以利用print()函数在Python中轻松地将变量的值输出到控制台。
这个函数在Python 2.7和Python 3中都可用,是推荐的打印文本到控制台的方法。
下面是一个声明两个名为x和y的变量,并使用print()函数输出这两个变量的值的例子。
x = "Hello World"
y = 453
print(x)
print(y)
如果运行上面的示例代码,应该在控制台中看到以下两行。
Hello World
453
可以看到使用print()函数如何输出这两个变量的值。
在Python中组合变量
也可以使用加号(+)操作符在打印语句中组合变量。
只要两个值都是相同的数据类型,这个操作符就会发挥作用。
串联
当涉及到的变量都是字符串时,那么这些字符串都是连词。
下面是一个在打印语句中把变量x和内联字符串结合起来的例子。
x = "Life Up"
print("Pi My " + x)
也可以用两个都是字符串的变量做同样的事情。
例如,如果有一个叫x的变量,其值是 “Pi
“,有一个叫y的变量,其值是 “Life Up
“,那么我们可以用x+y来组合它们。
x = "Pi "
y = "Life Up"
print(x + y)
你将从这两个样本中得到的输出如下。你会看到x和y两个变量都已经被连接起来了。
Pi Life Up
整数相加
如果两个变量的数据类型都是整数或浮点数,那么加号(+)将作为数学运算符工作
这里有一个例子,在print()函数中,将一个值为32的变量x与数字5结合起来。
x = 32
print(5 + x)
也可以通过组合两个变量来做同样的事情,只要它们都是数值型的。Python 不喜欢在组合变量时混合数据类型。
x = 5
y = 32
print(x + y)
这两个代码样本的结果最终应该是一样的。
37
字符串和整数的组合
在Python中,不能只把一个整数和一个字符串结合起来。为了连接不同的数据类型,需要将字符串转换为数字或将数字转换为字符串。
如果试图将一个字符串和一个数字结合起来,会遇到一个类似下面的错误,说明这些数据类型不能结合。
TypeError: cannot concatenate 'str' and 'int' objects
有一个方法可以绕过这个错误,那就是将数据转换为我们需要的类型。
转换为字符串
在本节的第一部分,将一个数字转换为一个字符串,因为需要担心的事情比较少。
要在Python中把整数或浮点数转换为字符串,可以使用str()函数。
这个Python函数会自动将任何其他Python数据类型转换为字符串。
比如一个数字,会从是数字5,变成一个包含数字5的字符串,像这样 “5”。
例如,如果想打印出 “还剩5天 “的文字,5是一个整数,存储在一个名为days的变量中,需要在str()函数中包装days变量。
通过下面的小代码片段,可以看到str()函数在实际中是如何工作的。
days = 5
print("还剩" + str(days))
如果运行这段代码,应该会看到字符串被无误地输出。
还剩5天
还有其他方法可以将数字转换为字符串,但在 Python 中的字符串指南中进一步探讨。
转换为数字
当然,这只是在处理字符串的时候才好,也有的时候你会想把字符串转换成数字。
使用Python,可以使用int()函数将变量从字符串转换为整数,并使用float()函数转换为float。
例如,假设有一个叫做wage
的变量,它的值是 “10”。现在,想把数字15加到这个数字上,把它存储在bonus
变量中。
为了能够将数字添加到字符串中,需要在int()函数中转化wage
变量。
下面我写了一个小的代码示例,告诉你如何做到这一点。
wage = "10"
bonus = 15
print(int(wage) + bonus)
从这个代码段中,应该得到以下结果,将字符串 “10 “转换为数字并添加到bonus
变量中。
25
通过这个结果,可以看到,wage
变量值已经被转换为int,然后成功添加到我们的bonus
变量中。
同样的方法也适用于存储在字符串中的浮点数,比如 “12.5”。唯一需要做的改变是将int()函数与float()函数进行切换。
在后面的教程中对Python中的数字进行更深入的探讨。
在Python中删除变量
如果想在Python中删除一个变量,有几种方法可以实现。
有几个不同的原因可以让你删除一个变量的内容。想删除一个变量的主要原因之一是为了更快地释放内存。
第一种方法是等待Python的垃圾收集器来处理这个变量。Python会自动跟踪一个对象有多少个引用。一旦引用数达到零,垃圾回收器就会自动释放使用过的内存。
当然,这可能不是最有效的删除变量的方法。也能够自己利用del关键字来实现。
这个关键字使用起来相当简单。只需要在del后面加上你要删除的变量。就像这样 del x
一旦一个变量被删除,Python会在垃圾收集器下一次启动时自动释放它使用过的内存。
可以在下面的代码片段中看到删除关键字的作用。
x = "labno3"
print(x)
del(x)
print(x)
当运行这段代码时,应该会遇到一个错误,说明变量名x没有定义。
>>> x = "labno3"
>>> print(x)
labno3
>>>
>>> del(x)
>>>
>>> print(x)
Traceback (most recent call last):
File "", line 1, in
NameError: name 'x' is not defined
需要注意的是,即使一个变量被删除,它的内存仍然会被使用,直到Python垃圾回收器清理内存为止。Python 不保证内存何时会被清除。
希望到这里,您现在能够很好地理解变量在 Python 中是如何工作的。
也应该知道如何在你的脚本中使用变量,并且能够组合和打印出它们的值。
在下一个指南中,我将向您解释Python中局部变量和全局变量的区别。
如果在这个Python变量教程中遇到了任何问题,那么欢迎在下面留言。
欢迎转载,请留下出处链接:Labno3 » Python编程基础,什么是变量,有什么用