【数据分析:语言篇】Python(09)Python中的变量

Python中的变量

在Python中,变量是用来存储数据的一种方式。Python是一种动态类型语言,因此在声明变量时不需要指定其数据类型。变量在Python中具有非常重要的作用,可以用于存储计算结果、操作数据、传递参数等。本文将详细介绍Python变量的相关知识。

变量的定义和赋值

在Python中,定义变量是非常简单的。可以通过等于号=来将一个值赋给变量。例如:

x = 5
y = 'Hello Python'
print(x, y)

这里,我们定义了两个变量x和y,其中x被赋值为整数5,而y被赋值为字符串’Hello Python’。

image-20230304234727971

Python中的变量不需要事先声明类型,而是在赋值的时候根据右侧的值自动推断类型,可以是数字、字符串、列表、字典、元组等数据类型。

需要注意的是,变量名必须是一个合法的标识符,即只能包含字母、数字和下划线,且不能以数字开头

变量的命名规范

在Python中,变量名的命名有一些规范,以便于其他人阅读代码时更易于理解。下面是一些Python变量命名的规范:

  • 变量名应该具有描述性,以便于其他人阅读代码时能够清楚地知道变量的含义。

  • 变量名应该用小写字母,如果变量名由多个单词组成,则可以使用下划线来分隔单词。

  • 变量名的第一个字符必须是字母或下划线。

  • 变量名应该避免使用Python中的关键字,例如if、else、while等。

    在Python中,有一些被特别保留的单词,这些单词被称为“关键字”或“保留字”。这些单词具有特殊的含义和用途,不能作为变量名或其他标识符的名称。在编写代码时,应该避免使用这些单词作为标识符的名称,否则可能会引发一些不必要的错误。

    以下是一些关键字:

    • None:表示空值或者不存在的值。

    • False:布尔值,表示假。

    • True:布尔值,表示真。

    • and:逻辑运算符,表示“与”。

    • as:用于创建别名。

    • assert:用于断言某个条件是真的。

    • async:用于定义异步函数或者异步上下文管理器。

    • await:用于在异步函数中等待另一个协程完成。

    • break:用于跳出循环。

    • class:用于定义类。

    • continue:用于跳过本次循环。

    • def:用于定义函数。

    • del:用于删除对象。

    • if:用于定义条件语句。

    • elif:用于在多分支的if语句中表示其中的一个条件。

    • else:用于在if语句条件为False时执行一个代码块。

    • except:用于捕捉异常。

    • finally:用于定义无论try语句块中是否出现异常都将执行的代码块。

    • for:用于定义循环。

    • from:用于从一个模块中导入部分模块到当前命名空间中。

    • global:用于指定变量为全局变量。

    • import:用于导入模块。

    • in:用于检查一个序列中是否包含一个特定的元素。

    • is:用于测试两个变量是否引用同一个对象。

    • lambda:用于创建匿名函数。

    • nonlocal:用于指定变量为外层嵌套函数的变量。

    • not:逻辑运算符,表示“非”。

    • or:逻辑运算符,表示“或”。

    • pass:空语句,用于占位或者表示不执行任何操作。

    • raise:用于触发异常。

    • return:用于从函数中返回值。

    • try:用于包含可能出现异常的代码块。

    • while:用于定义循环。

    • with:用于定义一个上下文管理器。

    • yield:用于从生成器中返回值。

  • 变量名应该尽量短,但不应该过于简单,以至于难以理解变量的含义。

  • 变量名应该使用名词。

例如,以下是一些Python变量命名的例子:

count = 0
user_name = 'wux_labs'
is_active = True
print(count, user_name, is_active)

image-20230304234955414

变量的类型

Python是一种动态类型语言,因此变量在声明时不需要指定数据类型。Python会根据变量所赋的值来自动判断变量的数据类型。例如:

a = 5        # a是整数类型
b = 'Hello'  # b是字符串类型
c = 3.14     # c是浮点数类型
d = True     # d是布尔类型
print(a, b, c, d)

image-20230304235111077

需要注意的是,变量的类型可以随时改变。例如,我们可以将一个整数变量重新赋值为一个字符串:

a = 5
print(type(a), a)
a = 'Hello'
print(type(a), a)

image-20230304235242493

变量的作用域

在Python中,变量的作用域是指变量可以被访问的范围。Python中不同的作用域:

  • 全局作用域(global scope):定义在模块层次的变量或函数,可以在模块中的任何地方被访问。
  • 局部作用域(local scope):定义在函数或类方法中的变量,只能在函数或类方法中被访问。

在Python中,变量的作用域是由它所在的代码块(block)决定的。每个代码块都有它自己的作用域,当Python解释器在执行代码块时,会创建一个新的作用域,当代码块执行完毕时,这个作用域就被销毁了。

变量的赋值

在Python中,定义赋值是非常简单的,可以通过等于号=来将一个值赋给变量。例如:

x = 5
y = 'Hello Python'

上述语句表示将整数5赋值给变量x。如果该变量之前不存在,则创建一个新的变量;如果该变量已经存在,则将其值更新为新的值。

变量可以被重新赋值为另一种类型的数据,例如:

x = 5
x = "Hello Python"

在这个例子中,我们先将整数5赋值给变量x,然后将字符串"Hello Python"赋值给变量x。由于Python是动态类型的,所以这种操作是有效的。

Python中的变量还支持多个赋值,例如:

x, y, z = 5, "Hello Python", [1, 2, 3, 4, 5]
print(x, y, z)

在这个例子中,我们使用一个语句将整数5、字符串"Hello Python"和列表[1, 2, 3, 4, 5]同时赋值给变量x、y和z。

image-20230304235509949

在Python中还支持多个变量指向同一个对象,例如:

a = b = c = 10
print(a, b, c)

上述语句表示将整数10赋值给变量a、b、c。此时a、b、c三个变量都指向同一个整数对象10。

image-20230304235644633

特殊的变量

Python 中有一些特殊的变量,它们有着特定的作用,包括:

  • __name__:这是一个特殊的变量,它会在每个Python文件中自动创建。当文件被直接运行时,__name__的值为"__main__",当文件被作为模块导入时,__name__的值为文件名。
  • __doc__:这个变量用于存储文档字符串,它可以通过在函数、类或模块的第一行编写一个字符串来定义。文档字符串可以通过在Python中使用help()函数来访问。
  • __file__:这个变量包含当前模块的文件名(包括路径),如果模块是在内存中创建的,则该变量的值为None
  • __builtins__:这个变量包含Python内置的函数和变量的名称空间。可以通过访问该变量来获得Python内置函数的列表。
  • __package__:这个变量包含当前模块的包名,如果模块不在包中,则该变量的值为None

这些特殊变量通常是只读的,不能被重新赋值。

删除变量

在Python中删除变量可以使用del关键字。del可以删除单个变量、删除多个变量。

x = 5
print(x)
del x
print(x)

image-20230305000226610

以上案例中,我们先定义了变量x,并打印x,然后将变量x删除,删除后则无法访问。

使用del删除的变量或元素会被彻底删除,无法再次访问或使用。如果尝试访问已删除的变量或元素,Python会抛出NameErrorKeyError异常。因此,在删除变量或元素之前,请确保它们不再需要使用。

总结

总之,Python变量是一个基本的概念,用于存储数据。Python变量的命名需要遵循一定的规则,可以使用赋值语句创建变量,支持多个变量指向同一个对象,支持变量类型的动态转换。在删除变量或元素之前,请确保它们不再需要使用。

  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wux_labs

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值