一、数字类型内置方法
是否可变:
可变 :值变(在原值上修改)id不变
不可变:值变id也变
是否有序:
有序:有索引
无序:无索引
整型:
无有序无序之说
不可变
浮点型:
无有序无序之说
不可变
二、字符串内置方法
有序
不可变
按索引取值
text = 'abcdefghijklmn'
print(text[0])
print(text[-1])
a
n
切片[首:尾:步长]
text = '123456789'
print(text[1:6])
print(text[-4:])
print(text[:-4:-1])
# 取头不取尾
23456
6789
987
长度len
text = '123456789'
print(len(text))
9
成员运算in|not in
text = '123456789'
print('123' in text)
print('694' in text)
print('326' not in text)
True
False
True
移除字符串开头和结尾的指定字符(默认为空白字符)strip
text = ' 9312345678999999 '
print(text.strip())# 移除两端空格
print(text.strip().strip('13469'))# 两端向内依次找直到第一个找不到
9312345678999999
2345678
将字符串按指定分隔符拆分为子字符串列表split
text = '123: 456: 789'
print(text.split())#默认一个或多个空格
print(text.split('3'))#指定分隔符前后为两端
print(text.split(':',1))#控制分割次数
['123:', '456:', '789']
['12', ': 456: 789']
['123', ' 456: 789']
循环
text = ' ab cdefghijklmn'
for i in text:
print(i)
a
b
c
d
e
f
g
h
i
j
k
l
m
n
——————————————————————————————————
左移除lstrip()& 右移除rstrip()
text = '123abc123'
print(text.lstrip('321'))
print(text.rstrip('321'))
abc123
123abc
转小写lower()& 转大写upper()
text = 'niia LEO'
print(text.lower())
print(text.upper())
niia leo
NIIA LEO
开头是~吗 startswith()& 结尾是~吗 endswith()
text = 'hello world'
print(text.startswith('hello'))
print(text.endswith('world'))
print(text.endswith('dlrow'))
True
True
False
右拆分rsplit()
ABC ='a:b:c:d:e'
print(ABC.rsplit(':',1))
['a:b:c:d', 'e']
list内均为同数据类型元素拼接join ()
text_list = ['hello','Hi','Hey']
print('! '.join(text_list))
text_list = ['hello','Hi',1,2]
print('! '.join(text_list))
hello! Hi! Hey
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
Cell In[161], line 4
2 print('! '.join(text_list))
3 text_list = ['hello','Hi',1,2]
----> 4 print('! '.join(text_list))
TypeError: sequence item 2: expected str instance, int found
替换一段字符串 replace()
my_love = 'azzz az'
print(my_love.replace('z','lalulu'))
print(my_love.replace('az','lalulu'))
alalululalululalulu alalulu
laluluzz lalulu
是否只包含数字字符(0-9)isdigit()
mon_day = '6148'
print(mon_day.isdigit())
tus_day = '156s'
print(tus_day.isdigit())
True
False
name = ' aleX'
print(name.strip())
print(name.startswith('al'))
print(name.endswith('X'))
print(name.replace('l','p'))
print(name.split('l'))
print(name.upper())
print(name.lower())
print(name[1])
print(name[:3])
print(name[-2:])
n=0
for i in name:
n+=1
if i == 'e':
break
print(n)
aleX
False
True
apeX
[' a', 'eX']
ALEX
alex
a
al
eX
4
right_age = 27
award = {'0':'buwawa','1':'bianxingjingang','2':'aoteman','3':'《python从入门到放弃》'}
while 1:
for i in range(3):
age1 = input('请输入年龄:').strip()
if age1.isdigit() == False:
print('请好好猜')
continue
else:
age = int(age1)
if age == right_age:
print(f'恭喜你答对了!\n,{award}')
cho = input('现在退出?')
if cho == 'N':
pass
elif cho == 'Y':
break
choose =input('选个奖品吧!')
print(f'你选择了{award[choose]}')
break
elif age > right_age:
print('猜大了')
elif age < right_age:
print('猜小了')
else:
choice = input('还想猜吗?')
if choice == 'Y':
continue
elif choice == 'N':
break
break
请输入年龄: ij
请好好猜
请输入年龄: 16
猜小了
请输入年龄: 29
猜大了
还想猜吗? Y
请输入年龄: 24
猜小了
请输入年龄: 28
猜大了
请输入年龄: 27
恭喜你答对了!
,{'0': 'buwawa', '1': 'bianxingjingang', '2': 'aoteman', '3': '《python从入门到放弃》'}
现在退出? N
选个奖品吧! 3
你选择了《python从入门到放弃》
查找子字符串首次出现位置find()
m = ' jnk nano nasnx nbic siaihb'
print(m.find('nano'))
print(m.find('naii'))# 找不到
print(m.find('n'))
print(m.find('n', 9, 20))
5
-1
2
10