基础数据类型的常用方法:
int(整数)
i = 4
print(i.bit_length()
#显示结果为3
查询十进制转化成二进制占用的最小位数
布尔值bool
布尔值就两种:True,False。就是反应条件的正确与否。
真 1 True
假 0 False
str(字符串)
对字符串的下面这两部分操作:形成的都是一个新的字符串,与原来的字符串没有关系。
字符串的索引切片加步长
- 按照索引去取(索引从0开始,最后一个的索引为:-1)
s = '我爱吃小龙虾!'
s1 = s[4]
s2 = s[-1]
print(s1, tylpe(s1))
print(s2, tylpe(s2))
#显示:龙 <class 'str'>
# ! <class 'str'>
2.按照切片去取(顾头不顾尾)
s = '我爱吃小龙虾!'
s1 = s[: 4]
s2 = s[3: ]
s3 = s[1: 3]
print(s1, s2, s3)
#显示:我爱吃小 小龙虾 爱吃
2.按照切片+步长去取(如果想倒叙取值,加一个反向步长(负号))
s = '我爱吃小龙虾!'
s1 = s[1: 5: 2]
s2 = s[:: 2]
s3 = s[-1: -6: -1 ]
print(s1, s2, s3)
#显示:爱小 我吃龙! !虾龙小吃
字符串的常用方法
#captalize,swapcase,title
print(name.capitalize()) #首字母大写
print(name.swapcase()) #大小写翻转
msg='egon say hi'
print(msg.title()) #每个单词的首字母大写
# 内同居中,总长度,空白处填充
ret2 = a1.center(20,"*")
print(ret2)
#数字符串中的元素出现的个数。
# ret3 = a1.count("a",0,4) # 可切片
# print(ret3)
a2 = "hqw "
# 前面的补全
# 默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。
ret4 = a2.expandtabs()
print(ret4)
a4 = "dkfjdkfasf54"
#startswith 判断是否以...开头
#endswith 判断是否以...结尾
# ret4 = a4.endswith('jdk',3,6) # 顾头不顾腚
# print(ret4) # 返回的是布尔值
# ret5 = a4.startswith("kfj",1,4)
# print(ret5)
#寻找字符串中的元素是否存在
# ret6 = a4.find("fjdk",1,6)
# print(ret6) # 返回的找到的元素的索引,如果找不到返回-1
# ret61 = a4.index("fjdk",4,6)
# print(ret61) # 返回的找到的元素的索引,找不到报错。
#split 以什么分割,最终形成一个列表此列表不含有这个分割的元素。
# ret9 = 'title,Tilte,atre,'.split('t')
# print(ret9)
# ret91 = 'title,Tilte,atre,'.rsplit('t',1)
# print(ret91)
#format的三种玩法 格式化输出
res='{} {} {}'.format('egon',18,'male')
res='{1} {0} {1}'.format('egon',18,'male')
res='{name} {age} {sex}'.format(sex='male',name='egon',age=18)
#strip
name='*egon**'
print(name.strip('*'))
print(name.lstrip('*'))
print(name.rstrip('*'))
#replace
name='alex say :i have one tesla,my name is alex'
print(name.replace('alex','SB',1))
#####is系列
name='jinxin123'
print(name.isalnum()) #字符串由字母或数字组成
print(name.isalpha()) #字符串只由字母组成
print(name.isdigit()) #字符串只由数字组成