数据类型
int、str、bool、tuple元组、list集合
int:bit_length()
i=4
print(i.bit.length()) #:表示出变量i所占用的有效位数
0 0000 0000
1 0000 0001
2 0000 0010
3 0000 0011
4 0000 0100
……
循环:while True==while 1 用后者执行效率更高(更有范儿)
str:有顺序,有索引,索引从0开始
[输入数字,第几位]
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
a='1234567890' print(a[0]) print(a[5]) print(a[9]) print(a[-1]) print(a[0:]) print(a[:-1]) print(a[:])
切片:[数字:数字]
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 a='1234567890' 2 print(a[0:4]) 3 print(a[4:7])
隔一个取一个或隔两个、倒着来:[起始索引:终止索引:步长]
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 a='1234567890' 2 # print(a[-1:-8:-1])输出0987654 3 # print(a[-2:-6:-2])输出9、7 4 # print(a[0:-1:3])输出1、4、7
字符串的常用方法:
**capitalize(): 首字母大写,其它字母小写。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='ABCDEFG' print(s.capitalize()) 输出Abcdefg 首字母大写,其它字母小写
**swapcase(): 大小写反转。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='ABCDEFG' print(s.swapcase()) 输出:abcdefg
title(): 非字母隔开的部分,首字母大写,其它小写。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='wq ar@ybl\i' print(s.title()) 输出:Wq Ar@Ybl\I
*****upper: 全部大写。lower: 全部小写。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='abCDeFG' print(s.upper()) print(s.lower()) 输出:ABCDEFG abcdefg code='aeDd' your_code=input('请输入验证码') if your_code.upper()==code.upper(): print(code)
center: 以什么居中,填充物默认为空。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='abcdefg' print(s.center(50)) 输出: abcdefg s='abcdefg' print(s.center(20,'*')) 输出:******abcdefg*******
*****find(): 通过元素找索引,可以整体找,可以切片,找不到返回-1。
index(): 通过元素找索引,可以整体找,可以切片,找不到会报错。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='abcdefg' print(s.find('d')) 输出:3 为int类型 s='abcdeafg' # print(s.find('abc')) # 输入:0 # print(s.find('a',1,6)) # 输出:5
***startswith endswith:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='abcdefg' print(s.startswith('a')) print(s.startswith('ab')) print(s.startswith('e',4)) 切片 输出True or False
*****strip: 去除字符串前后空格、换行符等。
print(s.strip()) print(s.lstrip())去除前面的 print(s.rstrip())去除后面的
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
name=input('输入名字').strip() if name=='alex': print('somebody') else:print('重新输入')
*****split: str转换列表的方法。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='abc efg lkj' print(s.split()) 输出:['abc', 'efg', 'lkj'] s=' abceaglaj' print(s.split('a')) 输出:[' ', 'bce', 'gl', 'j'] 以a切割,a就没有了。a前面空格也算。可添加切割次数。
*****replace: 替换。(老,新,次数)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='姐弟俩一起来老男孩' s1=s.replace('老','小') print(s1) 输出:姐弟俩一起来小男孩 后面可添加次数。
count: 计算某个元素出现的次数。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='asdsaaaa' print(s.count('a')) 输出:5
len: 计算字符长度。用法与上面不同,前面不用加点。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='adj' print(len(s)) 输出:3 len的用法前面不用加点。
name='jinxin123'
print(name.isalnum())判断字符串由字母或数字组成
print(name.isalpha())判断字符串只由字母组成
print(name.isdigit())判断字符串只由数字组成
*********format:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
# s='我叫{},今年{},身高{}'.format('金鑫',21,165) # print(s) # s='我叫{0},今年{1},身高{2},我还叫{0}'.format('金鑫',21,165) # print(s) s='我叫{name},今年{age},身高{high}'.format(name='金鑫',age=21,high=165) print(s)
for循环:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
s='asdfghj' count=0 flag=True while flag: print(s[count]) count+=1 if count==len(s): flag=False s='asdfghj' count=0 while count<len(s): print(s[count]) count+=1 s='asdfghj' for i in s: print(i)