一、数据类型之整型的函数使用
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('您的评论有敏感词...')