基础数据类型初识
int
打印占的最少有效位数:
int i = 4 print(i.bit_length())
0: 0000 0000 0位
1: 0000 0001 1位
2: 0000 0010 2位
3: 0000 0011 2位
4: 0000 0100 3位
bool
str ---> bool 非空 True 空就是False
bool ----> str str(True) str(False)
#True i = bool(3) print(i) #False i = bool(0) print(i)
0 :False
1: True
1的效率比True的效率高
str
有顺序,有索引,索引是从0开始的
s = "abcd" print = s[0] #输出的是a #如果是s[1],结果是b#s[-1]是最后一位,结果是d
切片:顾首不顾尾
s = "abcdefghi" s1 = s[0:3] print(s1) #输出abc #如果s[2:]“:”后不输入数字,表示输出到最后 #如果s[:5]“:”前不输入数字,表示从最前面输出
起始索引:终止索引:步长
s = "abcdefghi" s1 = s[0:7:2] print(s1) #表示输出1到7位中间每隔两位输出一个,输出结果为aceg
倒叙取:
s = "abcdefghijk" s1 = s[8:1:-2] print(s1) #[先写后面:再写前面:倒叙取为负数]
字符串的常用方法:
capitalize()首字母大写,其他字母小写:
s = 'abcd EFg' print(s.capitalize()) #输出Abcd efg
swapcase()大小写反转:
s = "abcd EFGH" print(s.swapcase()) #输出ABCD efgh
非字母隔开的部分,首字母大写,其他小写:
s = 'ab cd3ef#gh' print(s.title()) #输出Ab Cd3Ef#Gh
全部大写和全部小写:
s = 'abcDEF' print(s.upper()) #输出ABCDEF print(s.lower()) #输出abcdef
以什么居中,填充物默认空:
s = "abc" print(s.center(20)) print(s.center(20,'*')) #20:长度 *:填充物
\t 自动补位:
s = 'ab\tcdefghi' print(s.expandtabs()) #输出ab cdefghi #如果\t 前面已经有八位,那就补全16位
find()通过元素找索引,可以整体找,可以切片,找不到返回-1:
s = "abcdefg"
print(s.find('e',1,5))
#输出4,表示在切片1到5之间查找e#index()通过元素找索引,可以整体找,可以切片,找不到会报错
startswith:以什么开头endswith:以什么结尾
s = 'abcdefghigk'
print(s.startswith('a')) T
print(s.startswith('al')) F
print(s.startswith('w',5)) 5表示第五位开始 F
print(s.startswith('W',5)) F
print(s.endswith("k")) T
\n表示换行strip 去除字符串前后两端的空格,换行符,tab键等:
s = '\talex wusir\n' print(s) print(s.strip()) 去除两侧空格换行符 print(s.lstrip()) 去除左侧 print(s.rstrip()) 去除右侧
s1 = 'alalelllllllxwusirbl'
print(s1.strip("lab"))
#如果字符串中间有一个除(“lab”)以外的字母,则停止去除#输出 elllllllxwusir
split str --->list方法:切割
s = 'abc;def;ghi'
s1 = 'abcabcabc'
print(s.split(';'))
print(s1.split('a',2))
#结果['abc', 'def', 'ghi']
#结果['', 'bc', 'bcabc'] a在左侧有一个空,2 表示分割次数
replace替换:
s1 = '我是你大爷你大爷你大爷'
s2 = s1.replace('大','爷',2)
print(s2)
#('大','爷',2)表示将大用爷替换,2表示次数
#结果:我是你爷爷你爷爷你大爷
字符串组成的判断:
name='abc123' print(name.isalnum()) #字符串由字母或数字组成 输出True print(name.isalpha()) #字符串只由字母组成 输出False print(name.isdigit()) #字符串只由数字组成 输出False
格式化输出format:
#第一种
s = '我叫{},今年{},身高{}'.format('刘林',25,175)
print(s)
#输出:我叫刘林,今年25,身高175
#第二种,可以重复使用
s = '我叫{0},今年{1},身高{2},两年后我依然叫{0}'.format('刘林',18,175)
print(s)
#输出:我叫刘林,今年18,身高175,两年后我依然叫刘林
#第三种,可以不按照顺序写,也可以重复使用
s = '我叫{name},今年{age},身高{high}'.format(name = '金鑫',high=175,age=21)
print(s)
count 元素出现的次数:
s = 'aaaaabcdef'
print(s.count('a'))
#输出:5
len 字符串长度:
s = 'abcd' print(len(s)) #输出:4
for循环:有限循环
s = "abcde"
for i in s:
print(i)
#输出
#a
#b
#c
#d
#e
来源:https://www.cnblogs.com/pygg/p/8336900.html