005-python基本数据类型
一、数据运算
1、算数运算
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 #!/usr/bin/python 2 # -*- coding: UTF-8 -*- 3 4 a = 21 5 b = 10 6 c = 0 7 8 c = a + b 9 print "1 - c 的值为:", c 10 11 c = a - b 12 print "2 - c 的值为:", c 13 14 c = a * b 15 print "3 - c 的值为:", c 16 17 c = a / b 18 print "4 - c 的值为:", c 19 20 c = a % b 21 print "5 - c 的值为:", c 22 23 # 修改变量 a 、b 、c 24 a = 2 25 b = 3 26 c = a**b 27 print "6 - c 的值为:", c 28 29 a = 10 30 b = 5 31 c = a//b 32 print "7 - c 的值为:", c
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 # !/user/bin/env python 2 # -*- coding:utf8 -*- 3 n1 = 'Alex' 4 n2 = 'Admin' 5 n3 = '是个美女!' 6 n4 = '是个帅哥!' 7 # 字符串的加班运算 8 n5 = n1 + n3 9 n6 = n2 + n4 10 print('n5=', n5) 11 print('n6=', n6) 12 # 字符串的乘法 13 n7 = n1 * 3 # 相当复制n1的内容3次,打印出来。 14 print('n7=', n7) 15 16 运行结果: 17 # n5= Alex是个美女! 18 # n6= Admin是个帅哥! 19 # n7= AlexAlexAlex
2.赋值运算
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 #!/usr/bin/python 2 # -*- coding: UTF-8 -*- 3 4 a = 21 5 b = 10 6 c = 0 7 8 c = a + b 9 print "1 - c 的值为:", c 10 11 c += a 12 print "2 - c 的值为:", c 13 14 c *= a 15 print "3 - c 的值为:", c 16 17 c /= a 18 print "4 - c 的值为:", c 19 20 c = 2 21 c %= a 22 print "5 - c 的值为:", c 23 24 c **= a 25 print "6 - c 的值为:", c 26 27 c //= a 28 print "7 - c 的值为:", c
3.比较运算
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 #!/usr/bin/python3 2 3 a = 21 4 b = 10 5 c = 0 6 7 if ( a == b ): 8 print ("1 - a 等于 b") 9 else: 10 print ("1 - a 不等于 b") 11 12 if ( a != b ): 13 print ("2 - a 不等于 b") 14 else: 15 print ("2 - a 等于 b") 16 17 if ( a < b ): 18 print ("3 - a 小于 b") 19 else: 20 print ("3 - a 大于等于 b") 21 22 if ( a > b ): 23 print ("4 - a 大于 b") 24 else: 25 print ("4 - a 小于等于 b") 26 27 # 修改变量 a 和 b 的值 28 a = 5; 29 b = 20; 30 if ( a <= b ): 31 print ("5 - a 小于等于 b") 32 else: 33 print ("5 - a 大于 b") 34 35 if ( b >= a ): 36 print ("6 - b 大于等于 a") 37 else: 38 print ("6 - b 小于 a")
4、逻辑运算
多个逻辑运算组合,有以下四种情况。
- 当前面逻辑计算值为True(1),并且后面跟的是“or”,则这个算式最终的计算值为True。
- 当前面逻辑计算值为True(1),并且后面跟的是“and”,则要继续计算。
- 当前面逻辑计算值为Flase(0),并且后面跟的是“or”,则要继续计算。
- 当前面逻辑计算值为Flase(0),并且后面跟的是“and”,则这个算式最终的计算值为Flase。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 #!/usr/bin/python3 2 3 a = 10 4 b = 20 5 6 if ( a and b ): 7 print ("1 - 变量 a 和 b 都为 true") 8 else: 9 print ("1 - 变量 a 和 b 有一个不为 true") 10 11 if ( a or b ): 12 print ("2 - 变量 a 和 b 都为 true,或其中一个变量为 true") 13 else: 14 print ("2 - 变量 a 和 b 都不为 true") 15 16 # 修改变量 a 的值 17 a = 0 18 if ( a and b ): 19 print ("3 - 变量 a 和 b 都为 true") 20 else: 21 print ("3 - 变量 a 和 b 有一个不为 true") 22 23 if ( a or b ): 24 print ("4 - 变量 a 和 b 都为 true,或其中一个变量为 true") 25 else: 26 print ("4 - 变量 a 和 b 都不为 true") 27 28 if not( a and b ): 29 print ("5 - 变量 a 和 b 都为 false,或其中一个变量为 false") 30 else: 31 print ("5 - 变量 a 和 b 都为 true")
5、成员运算
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 #!/user/bin/env python 2 #-*-coding:utf-8-*- 3 4 name = '高建好' 5 if '好' not in name: 6 print('不在') 7 else: 8 print('在') 9 if '键' in name 10 print('好') 11 else: 12 print('不好')
二、数据类型
每个数据类型都有自己独有的“魔法”,即,每个数据数据类型都是自己独有的算法函数。
数据转换测试程序
#!/user/bin/env python # -*-coding:utf-8-*- #数据转换测试程序 v1 = 'A' # 用于测试的数据类型 print(v1, type(v1)) v = int(v1) # 转整型 print(v, type(v)) bl = bool(v1) # 转布尔值 print(bl, type(bl)) str1 = str(v1) # 转字符串 print(str1, type(str1)) li = list(v1) # 转列表 print(li, type(li)) tu = tuple(v1) # 转元组 print(tu, type(tu)) info = dict(v1) # 转字典 print(info, type(info))
1.数字 int
1. 将字符串格式的数据转换成整形,函数格式:int(x)
2.计算数字至少用几位二进制数来表示,函数格式:x.bit_length()
3.将整形转换成二进制数表示,函数格式:bin(x)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 #!/user/bin/env python 2 #-*-coding:utf-8-*- 3 # python3,数字只有整形,int 4 #数据格式转换。将字符串x转换成整形。 5 a = '123' 6 b = int(a) 7 print(a,type(a)) 8 print(b,type(b)) 9 10 age = 100 11 #将整形转化二进制 12 r = bin(age) 13 print(r) 14 #函数的大意:计算整形的二进数的位数(至少用几位来表示) 15 v = age.bit_length() 16 print(v)
D:\Python38\python.exe E:/002python/day001/shuzi.py 123 <class 'str'> 123 <class 'int'> 0b1100100 7
2.字符型 str
备注:字符的下标
1.将字符串的首字母变成大写,函数格式:str.capitalize()
2.字符串中所有的大写字母转换成小写形式。函数格式:str.casefold()、str.lower()
3、设置宽度,并且将内容居中显示。20表示宽度的大小,*表示空白处填充的内容,可以填入一个字符,函数格式:center(self, *args, **kwargs)
- self--可以忽略不计,变量自己本身;
- args--设置的大小表示展示的宽度;
- kwages--空白处填充的内容,如kwages=“none”,则空白,kwages=“*”,则空白处填充的内容为“*”
4、用于统计字符串里某个字符出现的次数,函数格式:count(self, sub, start=None, end=None)
- sub -- 搜索的子字符串
- start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。
- end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。
5、用于判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回 True,否则返回 False。函数格式:endswith(self, suffix, start=None, end=None)
- suffix -- 该参数可以是一个字符串或者是一个元素;
- start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。
- end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。
6、用于判断字符串以是否以指定的前缀开头,如果以指定的前缀开头返回True,否则返回Flase。函数格式:startswith(self, suffix, start=None, end=None)
- suffix -- 该参数可以是一个字符串或者是一个元素;
- start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。
- end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。
7、检测字符串中是否包含子字符串 str ,如果指定 start(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果指定范围内如果包含指定索引值,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。
函数格式:find(self, sub, start=None, end=None)
- sub -- 指定搜索的子字符串;
- start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。
- end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。
8、将{}中的内容进行替换,字符串格式化。函数格式:str.format(name='admin')
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 test = 'i am {name}' 2 v7 = test.format(name='admin') 3 print(v7)
输出为 i am admin
3.列表 list
4.元祖 tuple
5.字典 dict
6.布尔 bool
![](https://images.cnblogs.com/cnblogs_com/xf23554/1929733/o_2102070724551.jpg)
![](https://images.cnblogs.com/cnblogs_com/xf23554/1929733/o_210207082121niu.gif)