类型转换
所谓的类型转换,就是将一个类型的对象转换为其他类型的对象,类型转换并不改变对象本身的类型;而是根据当前对象的值创建一个新的对象。
类型转换函数 int()
float()
str()
bool()
:
int() 可以将其他的对象转换为整型
- int()函数不会对原来的变量产生影响,作用是将对象转换为指定的类型并将其作为返回值返回
- 如果希望修改原来的变量,则需要对变量进行重新赋值
规则:
布尔值:True --> 1 False --> 0
>>> a = True # 注意True应该大写首字母,否则报错NameError: name 'ture' is not defined
>>> a
True
>>> b = int(a)
>>> b
1 # Ture=1 | False=0
>>> a
True # 不改变对象本身的类型
浮点数:直接取整,省略小数点后的内容
字符串:- 合法的整数字符串,直接转换为对应的数字。
- 如果是不合法的整数字符串,则报错
>>> a = '12.5'
>>> a
'12.5'
>>> a = int(a) # 报错
Traceback (most recent call last):
a = int(a)
ValueError: invalid literal for int() with base 10: '12.5'
- 对于其他不可转换为整型的对象,直接抛出异常 ValueError
float() 可以将对象转换为浮点数
str() 可以将对象转换为字符串
任何对象都可以转换为字符串,几乎没有限制
bool() 可以将对象转换为布尔值
- 任何对象都可以转换为布尔值
- 对于所有表示空性的对象都转换为False,其余的转换为True
- 表示空性的对象有 0 None '_' (空)
变量
变量在程序中就是用一个变量名表示,变量名必须是大小写英文、数字和_的组合,且不能用数字开头,变量不仅可以是数字,还可以是任意数据类型,python中等号=
是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量。因为Python是动态语言,变量本身类型并不固定。
Python支持多种数据类型,在计算机内部,可以把任何数据都看成一个“对象”,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量给关联起来。
-
对象和变量关系辨明
Python是一门面向对象的语言: - 程序运行当中,所有的数据都是存储到内存当中然后再运行的,对象就是内存中专门用来 存储数据的一块区域。 - 对象并没有直接存储到变量中,变量中存储的不是对象的值,而是对象的id(内存地址) - 通常我们通过变量来引用对象,而不是直接操作对象
-
理解变量在计算机内存中的表示
当我们写: a = 'ABC' 时,Python解释器干了两件事情: 1、在内存中创建了一个'ABC'的字符串(对象); 2、在内存中创建了一个名为a的变量,并把它指向'ABC'。 也可以把一个变量a赋值给另一个变量b,这个操作实际上是把变量b指向变量a所指向的数据。 例如如下代码: a = 'ABC' b = a a = 'XYZ' print(b)# ABC
-
变量中保存的是对象的ID,只有在为变量重新赋值时才会改变
变量和变量之间是相互独立的,修改一个变量不会影响另一个变量
变量通过赋值来获得新的对象的ID(内存地址),之前的对象的ID会被抛弃
常量
所谓常量就是不能变的变量,比如常用的数学常数π就是一个常量。在Python中,通常用全部大写的变量名表示常量。
PI = 3.1415926