---恢复内容结束---
1.int 主要用作运算
2.str 字符串 用作存储少量的信息 便于传输
3.list 列表 存储大量数据 便于操作 ['alex','a',{'name':hehe'},'yyy']
4.tuple 元祖 只读列表 不能作修改 ('ALEX',{'name':'dd'},'yy')
5.bool 判断真假 True or False 作为条件
6.dic 字典 通过键值对来储存数据 查找起来通过二分法 查找速度很快 {'name':'dd','job':'it'}
二、各种数据类型详解
1.int
enth 转换二进制最小位数
i = 4 print(i.bit_lenth) 0000 0100
2.bool值与各种之间的转换
int 转换bool 非0即True
str 转换 bool 非空即为True print(bool('')) = False
s = ''
if s :
print(666)
else:
print(333)
# 这段代码会输出333 此时的变量s为空 所以bool值False 如果变量s = ' ' 引号中间是空格输出的会是666 即使是空格bool值也是True
3.str 的一些基本用法
切片 索引 s [起始索引:截止索引:步长]
#索引 s = 'laonanhaishi' print(s[2]) #o print (s[-2]) #h #切片 顾头不顾腚 print(s[0:2]) # la print(s[0:6:2]) #loa print(s[-2:-4:-1]) #hsi print(s[:]) #laonanhaishi 全部打印 # 第一个索引为0时可以省略不写
常用的一些操作方法
capitalize swapace
#capitalize swapace
i = 'abcdEfg'
print(i.capitalize())
# Abcdefg 首字母大写 后面全部小写
print(i.swapace())
#ABCDeFG 大小写翻转
tittle
tittle
s = 'ab,cd,ef'
print(s.tittle())
#Aa,Cd,Ef 每个单词的首字母大写后面的全部小写 以除了字母意外的字符隔开 (断句)
cent
s = 'ab,cc,de,Fg'
print(s.center(30,'我'))
#我我我我我我我我我ab,cc,de,Fg我我我我我我我我我我 一边10个字符 占位30个字节
start with end wih 判断以什么开头 和结尾
s = 'absdefg' s2 = s.startwith('sd',2) print(s2) #True
rstrip 去除右边的空格 换行符 tab(缩进)
lstrip 去除左边的空格 换行符 tab(缩进)
s = ' alexlaonanhai '
print (s.strip())
print (s.rstrip())
print (s.lstrip())
#alexlaonanhai
alexlaonanhai
alexlaonanhai
#s = 'fdaffsfsdfsdfsf'
print (s.strip('fd'))
#affsfsdfsdfs
find index 通过元素找索引
s = 'alexlaonanhai'
print(s.find('a',0,6))
print(s.rfind('a',0,6))
print(s.find('a',2,3))
print (s.rindex('a'))
# 0
# 5
# -1
# 11
区别
两种方式都只有rfind和rindex 因为本身默认的就是从左边查找 所以不存在lfind 和 lindex
在找不到不到目标时 find会输出-1 而index会报错
相同点:两种方式都可以通过切片来找元素的索引
count寻找元素的个数 可以切片
s = 'alexlaonanhai'
print(s.count('la',3,4))
print (s.count('al'))
#0
#1
replace 替换元素
s = "阿斯蒂芬打完大打完打完多"
s2 = s.replace('打完','hehe',0)
s3 = s.replace('打完','hehe')
s4 = s.replace('打完','hehe',2)
print(s2)
print(s3)
print (s4)
#阿斯蒂芬打完大打完打完多
#阿斯蒂芬hehe大hehehehe多
# 阿斯蒂芬hehe大hehe打完多
split 把字符串分离成列表 (这个很重要)
s = "阿斯 蒂芬 打完 大打 完打 完多"
s2 = s.split(' ',3) # 分离3次 会有4个元素
s3 = s.split(' ') #分离特征为' '
print (s2)
print (s3)
#['阿斯', '蒂芬', '打完', '大打 完打 完多']
#['阿斯', '蒂芬', '打完', '大打', '完打', '完多']
format 格式化输出
s = '{}喜欢学习,在山上{},每天起床{}'.format('yy','唱歌','刷牙')
print (s)
s2= '{0}喜欢学习,在山上{1},每天起床{2}'.format('yy','唱歌','刷牙')
print(s2)
s3 = '{name}喜欢学习,在山上{sth},每天起床{what}'.format(name='yy',sth='唱歌',what='刷牙')
print(s3)
#yy喜欢学习,在山上唱歌,每天起床刷牙
yy喜欢学习,在山上唱歌,每天起床刷牙
yy喜欢学习,在山上唱歌,每天起床刷牙
格式化输出 %r 可以原文输出
isdigit 字符串由数字组成
isalpha 字符串由字母组成
isalnum 字符串由数字字母组成
s = '234'
print (s.isdigit())
s2 = 'a234'
print(s2.isalnum())
s3 = 'sdf'
print (s3.isalpha())
#True
#True
#True