Python数据类型与运算符
1.变量的数据类型
2.强制类型转换
(1)str类型转int类型:int(a)
1 # str -->int : int(a) 但如果“9.9”,而且是字符串类型转换成int类型的时候报错 2 3 a = 9.9 4 b = '9.9' 5 6 print(type(a), type(b)) 7 print(int(a)) 8 print(int(b)) 9 # <class 'float'> <class 'str'> 10 # 9 <class 'int'> 11 # Traceback (most recent call last): 12 # File "D:/PythonProject/Python基础/数据类型.py", line 8, in <module> 13 # print(int(b)) 14 # ValueError: invalid literal for int() with base 10: '9.9'
(2)str类型转float类型:float(a)
1 # str -->float : float(b) 2 3 b = '9.9' 4 5 print(type(b)) 6 print(float(b)) 7 8 # 输出 9 # <class 'str'> 10 # 9.9 <class 'float'>
(3)int类型转str类型:str(a)
1 # int -->str : str(a) 2 3 b = 9 4 5 print(type(b)) 6 print(str(b), type(str(b))) 7 8 # 输出 9 # <class 'int'> 10 # 9 <class 'str'>
(4)float类型转str类型:str(a)
1 # float -->str : str(a) 2 3 b = 9.9 4 5 print(type(b)) 6 print(str(b), type(str(b))) 7 8 # 输出 9 # <class 'float'> 10 # 9.9 <class 'str'>
(5)int类型转float类型:float(a)
1 # int -->float : float(a) 2 3 b = 9 4 5 print(type(b)) 6 print(float(b), type(float(b))) 7 8 # 输出 9 # <class 'int'> 10 # 9.0 <class 'float'>
(6)float类型转int类型:int(a),只不过小数点后的数字被抹掉了。
1 # float -->int : int(a) 2 3 b = 9.9 4 5 print(type(b)) 6 print(int(b), type(int(b))) 7 8 # 输出 9 # <class 'float'> 10 # 9 <class 'int'>
(7)bool类型:当变量为0或者为空字符串的时候,转成bool类型输出都为False,其他只要变量有值则为True。
1 flag = True 2 # bool-->int 3 print(int(flag), type(int(flag))) 4 # bool-->flag 5 print(float(flag), type(float(flag))) 6 # bool-->str 7 print(str(flag), type(str(flag))) 8 9 # 输出 10 # 1 <class 'int'> 11 # 1.0 <class 'float'> 12 # True <class 'str'>
3.运算符
(1)算术运算符:+、-、*、%、/、//、**
1 a = 2 2 b = 3 3 4 print(b / a) # 除法 5 print(b // a) # 整除 6 print(b ** a) # 表示b的a次方 7 print(b % a) # 取余 8 9 # 输出: 10 # 1.5 11 # 1 12 # 9 13 # 1
(2)赋值运算符:=、+=、-=、/=、*=,%=
1 a = 8 2 b = 4 3 a += b # 等价于a=a+b 4 print(a, b) 5 6 a = 9 7 b = 4 8 a //= b # 等价于a=a//b 9 print(a, b) 10 11 a = 9 12 b = 4 13 a %= b # 等价于a=a%b 14 print(a, b) 15 16 # 输出: 17 # 12 4 18 # 2 4 19 # 1 4
(3)关系运算符:>、<、=、>=、<===、!=,结果:True、False
1 a = 10 2 b = 23 3 print(a > b) # False 4 print(a < b) # True 5 print(a >= b) # False 6 print(a <= b) # True 7 print(a == b) # False 8 print(a != b) # True
如果是字符串比较:
ASCII 码对照表
1 a = 'abc' 2 b = 'acds' 3 # 按照Acill码表,一个一个字符的进行比较, 4 print(a > b) # False 5 print(a < b) # True 6 print(a >= b) # False 7 print(a <= b) # True 8 print(a == b) # False 9 print(a != b) # True
4.逻辑运算符
1 a = 1 2 b = 3 3 c = 0 4 print(a and b) # True and True --> True 5 # >>3 6 print(a and c) # True and False --> False 一假即假 7 # >>0 8 print(a or b) # True and True --> True 9 # >>1 10 print(b or c) # True and False --> True 一真即真 11 # >>3 12 flag = True 13 print(not flag) 14 # >> False
5.身份运算符和成员运算符
判断一个元素是否在某一个序列中。比如判断一个字符是否属于某个字符串,判断某一个对象是否在某个列表中等等。
“in”.意思是,如果在指定的序列中找到了,那么结果是True,如果没有找到,那么结果是False.
成员操作符的使用语法是:
obj [not] in sequence
这个操作符返回值是True或者False。obj可以是int、float、str, int与float不区分。sequence并非一定【】形式
1 a = [1, 5, 2, 5, 4] 2 b = 5 3 c = [1, 5, 4, 3] 4 print(c in a) 5 # >> False 6 print(b in a) 7 # >> True 8 print(c not in a) 9 # >> Treu
6.运算符的优先级
7.输出语句
1 name = '周杰伦' 2 age = 26 3 print('我喜欢听%d岁的%s唱歌' % (age, name)) 4 # >>我喜欢听26岁的周杰伦唱歌 5 print('我喜欢听%s岁的%s唱歌' % (age, name)) 6 # >>我喜欢听26岁的周杰伦唱歌 --中间的%s强制类型转换 7 8 9 age = 25 10 name = 'Caroline' 11 print('{0} is {1} years old. '.format(name, age)) # 输出参数 12 # >>Caroline is 25 years old. 13 print('{0} is a girl. '.format(name)) 14 # >>Caroline is a girl. 15 print('{0:.3} is a decimal. '.format(1 / 3)) # 小数点后三位 16 # >>0.333 is a decimal. 17 print('{0:_^11} is a 11 length. '.format(name)) # 使用_补齐空位 18 # >>_Caroline__ is a 11 length. 19 print('{first} is as {second}. '.format(first=name, second='Wendy')) # 别名替换 20 # >>Caroline is as Wendy. 21 print('My name is {0.name}'.format(open('out.txt', 'w'))) # 调用方法 22 # >>My name is out.txt 23 print('My name is {0:8}.'.format('Fred')) # 指定宽度 24 # >>My name is Fred .
作者:Ambitious
-------------------------------------------
个性签名:独学而无友,则孤陋而寡闻。做一个灵魂有趣的人!
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!
万水千山总是情,打赏一分行不行,所以如果你心情还比较高兴,也是可以扫码打赏博主,哈哈哈(っ•̀ω•́)っ✎⁾⁾!