一、数据类型之整型的函数使用
1 i = 3
2 print("该整型数字所占有效比特位的长度是:%d" % i.bit_length())
3 print(i.to_bytes(8, "big"))
4 '''
5 bit_length
6 1 0000 0001 1
7 2 0000 0010 2
8 3 0000 0011 2
9 '''
二、数据类型之布尔型
True Fasle
三、数据类型之间的转换
1 # 数据类型之布尔型 True Fasle
2 # 各种数据类型之间的转换
3 '''
4 一、整型转字符型
5 无特殊条件,整型都可以转换为字符型,直接用引号即可,也可以使用str()函数
6 '''
7 i = 22
8 print(str(i))
9
10 '''
11 二、字符型转整型
12 条件是,字符中只能是数字,否者报错!
13 '''
14 str_num = "1234"
15 print(int(str_num))
16
17 '''
18 三、整型转布尔型
19 规则是,非0全转为True,0转为False
20 '''
21 print(bool(-1))
22
23 '''
24 四、布尔型转整型
25 规则是:True会转为1,False转为0
26 ps:高效率使用1
27 比如在死循环中:
28 while True:
29 pass
30 跟
31 while 1:
32 pass
33 比效率要低,因为True还要转换为二进制,比整型转二进制要慢!
34 '''
35 print(int(True), int(False))
36
37 '''
38 五、字符型转布尔型
39 规则:非空的字符串都转为True,''转为False
40 '''
41 print(bool(''), bool(' '), bool('2'))
42
43 s = input('请您输入:')
44 if s:
45 print('您输入的不为空!%s' % s)
46 else:
47 pass
四、数据类型值字符型
1 # 字符串的索引与切片
2 s = "ABCDEFGH"
3 # s[首:尾:步长]
4 s1 = s[0] # A 开头的字母
5 s2 = s[-1] # H 最后的一个字母
6 s3 = s[0:2] # 顾头不顾腚 结果为:AB
7 s4 = s[0:4:2] # AC 第二个冒号后的数字,表示步长,默认为1,指定2表示隔一个字母取一个
8 s5 = s[4:0:-2] # 如果是负数,表示从右向左,倒着取。EC
9 s8 = s[::-1] # 倒序
10 s9 = s[4:0:-1]
11 print(s1, s2, s3, s4, s8, s9)
12
13 s6 = s[0:] # 取全部
14 s7 = s[::] # 也是表示取全部字母
15
16
17 # 字符串的操作
18
19 st = 'weLove beijing tian2an*men!'
20 st1 = st.capitalize() #首字母大写
21
22 # 全大写,全小写,实际应用在用户登陆时的验证码
23 st2 = st.upper()
24 st3 = st.lower()
25 code = input("请输入您的验证码,不区分大小写:")
26 while 1:
27 if code.upper() == "Abc".upper():
28 print("输入正确!")
29 break
30 else:
31 print("输入不正确,请重新输入!")
32 code = input("请输入您的验证码,不区分大小写:")
33 continue
34 # 大小写翻转
35 print(st.swapcase())
36
37 # 每个隔开(特殊字符或者数字)的单词首字母大写
38 print(st.title())
39
40 # 居中,空白填充
41 print(st.center(102, "~"))
42
43 # tab扩展,tab占8个字节,\t前的字符不足8个字节会用空格补足,如果前面的字符大于8个,只补5个空格
44 print("e\tfg".expandtabs())
45
46 # 与列表跟元组等,相同的公共方法
47 print(len(st))
48 print(st.count('a'))
49
50 #以什么开头结尾
51 print(st.startswith('we'), st.endswith('wo'), st.startswith('we', 0, 2))
52 if st.startswith("we"):
53 pass #结束判断,不会再进elif
54 elif st.endswith('men!'):
55 print('如此结尾!')
56 print(st)
57
58 # find 通过元素找索引,找不到返回-1
59 #print(st.find("wew"))
60 #
61 # index通过元素找索引,找不到报错
62 #print(st.index("hh"))
63
64 # strip默认删除前后空格 rstrip、lstrip 除去右、左空格
65 print(" 222 ".strip())
66 print(" 222".lstrip())
67 print("222 ".rstrip())
68 print(' *a%lexWUsi * r%'.strip(' *')) # 从左向右,只删除第一个
69 print(' *a%lexWUsi * r%'.strip('*')) # 从左向右,没有删除任何* ,因为有空格
70 print(' *a%lexWUsi* r%'.strip('*')) # 从左向右,没有删除任何*
71 print(' *a%lexWUsi* r%'.strip('%')) # 从左向右,删除碰见的第一个%
72 print(' *a%lexWUsi* r%'.strip(' %*')) # 结果时:'a%lexWUsi* r'
73 # 实际应用场景,用户登陆时,输入的用户名中带有空格,要除去掉。
74 username = input("请输入您的姓名:")
75 while 1:
76 if username.strip().upper() == "TOM":
77 print("输入正确!")
78 break
79 else:
80 print("输入错误,请重新输入!")
81 username = input("请输入您的姓名:")
82 continue
83
84 # 将字符串切割为列表 strip
85 print(st.split(' '))
86
87 # format的三种玩法 格式化输出
88 ss = '我叫{},今年{},爱好{},再说一下我叫{}'.format('太白', 36, 'girl', '太白')
89 ss1 = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format('太白', 36, 'girl')
90 ss2 = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(name='太白', age=36, hobby='girl')
91 print(ss +'\n'+ ss1 + '\n'+ ss2)
92
93 # 替换 replace
94 print('我们的老师姓王,我们亲切的称他老王!'.replace('王', '刘'))
95
96 # s = 'fhdsklfds'
97 # for i in s:
98 # print(i)
99
100 s = 'fdsa苍井空fdsalk'
101 if '苍井空' in s:
102 print('您的评论有敏感词...')