基础类型
基础类型总览
1.int:用于计算,计数,运算等
2.str:'这些内容' 用户少量数据的存储,便于操作
3.bool:Ture和False,俩种状态,机器用来判断对与错
4.list:列表。[],用来存储各种数据类型,可以存储大量的各种数据类型的数据,方便操作
5.tuple:元祖(),只能进行读取,不可以更改里面的数据
6.dict:字典{},利用key(键)与value(值)的形式存储大量关联性的数据,强调对应关系,无顺序关系(跟位置无关,即没有索引值)
7.set:集合{},关系测试(交集,并集)
1.int
1)digital.bit_length()
十进制数字转换为二进制数占用的最小位数。
i = 4 print (i.bit_length()) #查询十进制转换为二进制数所占的最小位数 #列i = 4 转为二进制位 100 所以输出为3
2.bool
数据类型之间的转换
1)int<->str
int(str)和str(int)
2)int<->bool
非零及True,零即为False;True->1,False->0
3)bool<->str
bool(str),只有空字符串对应的bool值就是False,非空就是True。
应用:字符串可以当条件语句。
str(bool),没有任何意义。
3.str操作
1)索引切片步长 ※利用索引取元素,取出来都是一个字符,形成字符串:
s1 = 'abcdefg'
s2 = s1[0] #返回a,类型字符串
s3 = s1[-1] #返回字符串最后一个元素,返回g
※按切片取值
s4 = s1[1:4] #取出bcd,取元素原则顾首不顾尾。
如果要从头开始取的话可以省略,同理要取值取到最后要把后面的索引值省略。
s5 = s1[:4] #取出abcd
s6 = s1[5:] #取出fg
※按照切片加步长取值
s7 = s1[1::2] #取值bdf,步长为2的取值
※从后往前取值
取出gfedc
s8 = s1[-1:-6] #取不到值
想反向取值,就必须加入一个反向步长
s8 = s1[-1:-6:-1] #取出gfedc
2)字符串常用的操作方法
str.capitalize()#首字母大写
str.center(宽度,“填充物”)
作用:字符串居中,前后填充自定义的字符(默认字符为空格)
str.upper() and str.lower()
作用:将字符串全变成大写and 将字符串全部变成小写
应用:输入验证码等,不区分大小写的场景
str.startswith() and str.endswith()
作用:判断字符以什么开头或结尾
str.swapcase()
作用:字符串大小写翻转
str.title()
作用:每个单词首字符大写,单词以非字母隔开
str.index() and str.find()
相同作用:取字符串中字符的索引值
不同之处:index() 如果取得字符在字符串中没有,运行之后程序就会报错
find() 如果取的字符在字符串中没有,运行之后程序会返回-1
str.strip() and str.lstrip() and str,rstrip()
作用:删除字符串首尾的空格 and删除字符串首(左)的空格and删除字符串尾(右)的空格
str.split()
作用:将字符串分割成列表,(默认按照空格进行分割,首尾的空格没有用)可以按指定字符进行分割。
“”.join(str)
作用:以自定制字符(例如"*".jion(str))将可迭代对象中的字符连接起来。
str.replace(原参数,新参数,替换次数(默认是全部替换))
作用:将字符串中的指定字符替换成新的字符
str.format()
作用:格式化输出
三种使用方式:
三种使用方式:
1.s1 = 'my name is {},age is {},sex is {}.'.format('ling','22','boy')
2.s2 = 'my name is {0},age is {1},my name still is {0}.'.format('ling','22')
3.s1 = 'my name is {name},age is {age},sex is {sex}.'.format(name = 'ling',age = '22',sex = 'boy')
# s1 = " alex " # print(s1.strip()) #strip()删除字符首尾的空白行 # print(s1.lstrip()) #lstrip()删除字符首(左边)的空白行 # print(s1.rstrip()) #rstirp()删除字符尾(右边)的空白行 # s2 = "aslfdksdf" # print(s2.capitalize()) #capitalize()首字母大写 # print(s2.center(20,'*')) #返回以长度为20为中心的字符串,其它填充(默认为空格)或者指定字符(例如*) # print(s2.startswith("as")) #startswith()以什么字符开始进行判断,输出True(或者False) # print(s2.endswith("f")) #endseith()以什么字符结尾进行判断,输出为Ture(或者False) # print(s2.index("lf")) #index()根据字符返回它的索引值,如果这个字符是字符串中所没有的例如index('b')就会报错 # print(s2.find("a")) #find()根据字符返回它的索引值,如果这个字符不在字符串中,输出就会是-1. # s3 = "nb nb lksdgj" # print(s3.split()) #split()将字符默认以空格进行分割,变成列表 # print("_".join(s3)) #.jion()在每个字符中间插入*号 # print(s3.replace('nb','hello',1)) #replace()取代,将字符串中的某段字符取代成新的字符, #格式化输出format() #三种情况 # s1 = "my name is {}".format("hexin") # print(s1) # s2 = "my name is {2},wo de tongzuo shi {1},ling yige tongzuoshi {0}".format("hexin","lingruizhi","wangjiahao") # print(s2) # s3 = "w de mingzhishi {name[0]},wo jin nian {name[1]},my sex{name}".format(name= "hexin",age ="21",sex ="xuesheng") # print(s3) # print(s3.count("n"))
is系列
作用:判断字符串是否是指定类型
例:str.isalnum()判断字符串是否由字母或者数字组成,如果是返回True。
str.isdigit()判断全部为整数,如果是,返回True
str.isalha()判断全部为字母,如果是,返回True
公共方法
1. str.count("统计的字符")计数
作用:统计某个字符在字符串中出现的次数
2. str.len()
作用:输出字符串的总长度