python学习五(数据类型)
数据类型
数据类型指的就是变量的值得类型,也就是可以变量赋那些值
在python数值分为了三中:
整数:在python中所有的整数都是int类型,在python的整数没有大小限制,可以是一个无限大的数
不能以0开头
其他进制的整数
二进制:0b开头
如: c = 0b10
八进制:0o开头
如: c = 0o10
十六进制:0x开头
如: c = 0x10
浮点数(小数):在python中所有的小数都是float类型
对浮点数进行运算时,可能会得到一个不精准的结果
复数
字符串
字符串用来表示一段文本信息,字符串是程序中使用的最多的数据类型
在python中字符串需要使用引号起来,引号可以是单引号或者双引号
相同的引号之间不能嵌套
如:
s = "hello""hello""
print(s)
会报错:SyntaxError: EOL while scanning string literal
正确的嵌套:
s ="hello'hello'"
print(s)
使用三重引号来表示一个长字符串""" '''
三重引号可以换行,并且会保留字符串中的格式
s = '''
锄禾日当午,汗滴禾下土。
谁知盘中餐,粒粒皆辛苦。
'''
格式化字符串
创建一个变量保存一个名字并采用4个方式输出,欢迎xx光临!
name = "bob"
1.多参数
print("欢迎",name,"光临")
2.字符串拼接
print("欢迎 "+name+ " 光临"")
3.格式化字符串(F:或f:都可以)
print(f:"欢迎 {name} 光临")
4.占位符
print("欢迎 %S 光临" %name)
字符串赋值(将字符串和数字相乘)
a = 'abc'
a = a * 2
print(a)
布尔值
布尔值主要用来做逻辑判读,布尔值一共有二个 True表示真 False表示假
None(空值)
None专门用来表示不存在
对象
python是一门面向对象的语言
一切皆对象!
程序运行当中,所有的数据都是储存到内存当中然后在运行的!
对象就是内存中专门用来储存指定数据的一块区域
对象有字符串、数值、布尔值、None
对象的结构
每个对象中都要保存三种数据
- id(标示)
id用来标示对象的唯一性,每一个对象都有唯一的id,可以通过id()函数可以查看id号
id(123) id(hello) id(abc)
id是由解释器生成的,在CPython中,id就是对象大的内存地址
对象一旦创建,id号永远都不能改变
-type(类型)
类型用来标示当前对象的类型
类型有:int(整型) str(字符串) float(浮点) bool(布尔) ...
通过type()函数来查看对象的类型
python是一门强类型语言,对象一旦创建类型不能修改
-value(值)
值就是对象中储存的具体数据
对于有些对象值是可以改变的
对象分为两大类,可变对象,不可变对象
变量和对象
对象并没有直接储存到变量中,在python中变量更像是给对象起了一个别名
变量中储存的不是变量的值,而是对象的id(内存地址)
当我们使用变量是,实际上就是在通过对象id在查找对象
变量中保存的对象,只有在为变量重新赋值时才会改变
变量和变量之间是相互独立的,修改一个不会影响哪位一个
类型转换
类型转换就是,将一个类型的对象转换为其他对象
类型转换不是改变对象本身的类型,而是将对象的值转换成一个新的对象
类型转换四个函数
int() float() str() bool()
int()可以将其他的对象转换为整型
规则:
布尔值: True - > 1 False - > 0
浮点数:直接取整,不取小数
字符串:合法的整数字符串,直接转换为相当于的数字,如果不是一个合法的整数字符串,
则报错:ValueError: invalid literal for int() with base 10: 'a'
float()和int()基本一致,不同的是它会将对象转换为浮点型
str()可以将其他的对象转换为字符串
bool()可以将对象转换为布尔值,任何对象都可以转换为布尔值
规则:对于所有表示空性的对象都会转换为False, 其余的转换为True
那些代表空性:None、 0、 '' ....