Python学习之基础篇3--变量
一、定义变量
在Python中定义变量非常简单,不需要声明变量的类型,只需直接给变量赋值即可。
a = 1 #单变量赋值
a = b = 1 #多变量赋相同值
a, b, c = 1, 2, 3 #多变量赋不同值
二、命名规则
(一)标识符
标识符主要用来标识变量、函数、类、模块和其他对象的名称。其命名规则如下:
1、区分大小写,如name和Name是两个标识符。
2、标识符中只能包含数字、字母或下划线,且首字符不能是数字。
3、关键字(保留字)不能作为标识符。
#查看Python中的关键字
import keyword
keyword.kwlist
Python中的关键字FalsedefifraiseNonedelimportreturnTrueelifintryandelseiswhileasexceptlambdawithassertfinallynonlocalyiedbreakfornotclassfromorcontinueglobalpass*注:标识符分大小写,例如True、if等是关键字,而TURE和IF则不是关键字。
(二)变量的命名规则
1、变量名必须是一个合法的标识符。
2、关键字不能作为变量名、内置函数不能作为变量名。
3、应该选择有意义的单词,作为变量名,避免使用拼音。
var, var1, var_1 = 1.0, "变量", True #合法的变量名
_var = 1 #合法的变量名
1var = 1 #不合法的变量名
三、基本数据类型
Python 提供了六种基本的内置数据类型,包括数字、字符串、列表、元组、集合和字典。在这些类型中,数字类型进一步细分为四种:整数、浮点数、复数和布尔类型。
1、整数(int):不带小数点的正数或负数,如1、-2。
2、浮点数(float):带有小数点的数,如3.14,-1.5。
3、复数(complex):包含实部和虚部的数,用 j 表示虚部,如3+4j。
4、布尔类型(bool):只有两个值True和False,主要用于逻辑判断。
5、字符串(strings) :由字符(char)组成的序列,用单引号或双引号括起来,如'hello'或"world"。
6、列表(List):有序的元素集合,可以包含不同类型的元素,用方括号括起来,如[1, "a", 3.14]。
7、元组(Tuples):类似于列表,但元组是不可变的,用圆括号括起来,如(1, "a", 3.14)。
8、集合(Set):无序的元素集合,元素唯一,用花括号括起来,如{1, 2, 3}。
9、字典(Dictonary):无序的键值对集合,键必须是不可变类型,如字符串或元组,用花括号括起来,如{"neme": "zhangsan" , "age": 28}。
10、空值(None):None表示空值或没有值。
number = 10 #定义一个整数变量
decimal_number = 3.14 #定义一个浮点数变量
greeting = "Hello, World!" #定义一个字符串变量
is_active = True #定义一个布尔变量
fruits = ["apple", "banana", "cherry"] #定义一个列表变量
person = {"name": "Alice", "age": 25} #定义一个字典变量
prime_numbers = {2, 3, 5, 7, 11} #定义一个集合变量
coordinates = (10, 20) #定义一个元组变量
在Python中,数据类型还可以根据它们创建后是否可以被修改分为可变数据类型和不可变数据类型。
1、可变数据类型(Mutable Types):可以在不改变其标识的情况下被修改,如列表、字典和集合。这意味着可以更改存储在变量中的值,而不需要创建一个新的对象。
2、不可变数据类型(Immutable Types):一旦创建,就不能被修改,如数字和元组。如果尝试修改它们,实际上会创建一个新的对象。
四、类型判断
1、内置函数 type() :Python内置的 type() 函数可以用来查询变量的数据类型。
a, b, c= 20, 5.5, True
d = [1, 2, 3]
print(type(a), type(b), type(c), type(d))
>>>
2、isinstance():isinstance()函数用于判断一个变量是否为指定类型的实例,或者是否是该类型的子类的实例。这意味着,如果一个变量是某个类的子类实例,isinstance()也会将其视为该父类的类型。例如,bool类型是int类型的一个子类,因此使用该函数判断bool类型的数据时,会被判定为整数类型。
a = 111
isinstance(a, int)
>>> True
b = True
isinstance(b, int)
>>> True
3、is:在Python中,is关键字用于比较两个对象的标识(identity),即它们是否为同一个对象。当然也可以用is来判断变量的数据类型。
a = 111
a is int
>>> True
b = True
b is int
>>> False
五、类型转换
1、在Python编程中,有时数据类型会自动转换,无需人工干预,如:
#Python自动转换数据类型
num_int = 314
num_flo = 3.14
num_new = num_int + num_flo
print("num_int 数据类型为:",type(num_int))
print("num_flo 数据类型为:",type(num_flo))
print("num_new 值为:",num_new)
print("num_new 数据类型为:",type(num_new))
#运行结果
>>> num_int 数据类型为:
>>> num_flo 数据类型为:
>>> num_new: 值为: 317.14
>>> num_new 数据类型为:
2、在某些情况下,为了满足计算需求,需要使用int()等函数强制转换数据类型,如:
#手动转换数据类型
num_int = 123
num_str = "123"
print("num_int 数据类型为:",type(num_int))
print("类型转换前,num_str 数据类型为:",type(num_str))
num_str = int(num_str) # 强制转换为整型
print("类型转换后,num_str 数据类型为:",type(num_str))
num_sum = num_int + num_str
print("num_int 与 num_str 相加结果为:",num_sum)
print("sum 数据类型为:",type(num_sum))
#运行结果
>>> num_int 数据类型为:
>>> 类型转换前,num_str 数据类型为:
>>> 类型转换后,num_str 数据类型为:
>>> num_int 与 num_str 相加结果为: 246
>>> sum 数据类型为:
常用的数据类型转换函数函数描述int(x[, base])将x转换为一个整数,base用于设置进制数,默认为十进制float(x)将x转换为一个浮点数complex(real[, imag])创建一个复数,real为实部,imag为虚部str(x)将对象x转换为字符串
repr(x)
将对象x转换为表达式字符串,如将换行符‘\n’,转化为其相应的转义字符tuple(s)将序列s转换为一个元组list(s)将序列s转换为一个列表set(s)将序列s转换为一个可变集合frozenset(s)将序列s转换为一个不可变集合dict(d)创建一个字典,d 必须是一个 (key, value)元组序列chr(x)返回整数x对应的ASCII字符ord(c)返回字符c对应的ASCII数值hex(x)将整数x转换为一个十六进制字符串oct(x)将整数x转换为一个八进制字符串