day07 字符串和列表

day07字符串与列表

字符串的内置方法

lower upper

str = 'HelloWORld'
print (str.lower)  # helloworld全部变成小写
print(str.upper)  #HELLOWORLE变成大写
"""
    图片验证码不区分大小写
        思路:把用户输入的验证码全部转为大写或者小写,跟原来的验证码都转为大写或者小写进行比较
"""
# old_code = 'oldBoY'
# print('返回给你的验证码是:%s' % old_code)
# # 用户输入的验证码
# real_code=input('请输入验证码:')
if old_code.upper() == real_code.upper():  #  if old_code.lower() == real_code.lower():
#     print('验证码输入正确')
# else:
#     print('验证码错误')
​
# 补充:
print(res.islower())  # False
print(res.isupper())  # False
​
a ='hello'
print(a.islower())  # True

startswitch endwhich

res = 'helloworld'
print(res.startwhich('hel'))  # True
print(res.startwhich('h'))    # True
​
print(res.endwhich('old'))   #  True
print(res.endwhich('d'))    #   True

格式化输出 format

第一种玩法
s = 'my name is {}, my age is {}'
 print(s.format('kevin',22))    # my name is kevin, my age is 22
​
第二种玩法
s = 'my name is {0}, my age is {1}'
print(s.format('kevin',22))   #根据索引取值
s = 'my name is {0}, my age is {1}'
print(s.format(22,'kevin'))   # my name is 22, my age is kevin
​
第三种玩法(推荐)
s = 'my name is {name}, my age is {age}'
print(s.format(name = 'tony' , age = 22))   #my name is tony, my age is 22

join的用法

l = ['tony', 'kevin', 'jack', 'tom']
print('|'.join(1))  ## tony|kevin|jack|tom

replace替换字符串

s = 'my name is kevin kevin kevin kevin'
print(s.replace('kevin', 'jack', 1))  #my name is jack kevin kevin kevin
print(s.replace('kevin', 'jack', 2))  #my name is jack jack kevin kevin

isdigit判断

guess_age = input('请输入你的年龄:')
if guess_age.isdigit():  #如果年龄为整数的话
    if int(guess_age) == 18:
        print('猜对了')
else:                       #输入其他字符则会弹出来
    print('你输入的年龄不合法')

字符串需要了解的方法

1.find(查找)
msg='tony say hello hello hello'
# print(msg.find('s'))  # 5
# print(msg.find('hello'))  # 9
# print(msg.find('helloa'))  # -1
输出的是该字符在字符串中第一个字母索引的位置
'''find:是用来判断一个子字符串是否在另外一个字符串中'''
####不会报错,诺没有值则输出-1
​
2.index(查找)
# in
# print(msg.index('s')) # 5
# print(msg.index('hello')) # 5a
# print(msg.index('helloa'))  # 如果查不到字符串直接报错
###没有值直接报错
​
3 count(计数)
# print(msg.count('hello'))  # 3
# print(msg.count('helloa'))  # 0
该代码块在字符串中出现的次数
​
4.center(居中)
# res = 'kevin'
# print(res.center(16, '@'))  # 居中展示
# print(res.ljust(16, '@'))  # 左对齐
# print(res.rjust(16, '@'))  # 右对齐
​
5.captalize  #字符串第一个字母大写
swapcase #全部大写
title #首字母大写
res = 'my name is kevin'
print(res.title())  # My Name Is Kevin
print(res.capitalize())  # My name is kevin
print(res.swapcase())  # MY NAME IS KEVIN

列表的内置方法(重点)

类型转换

# print(list(123))  不可
# print(list(1.11)) 不可
print(list('hello')) # ['h', 'e', 'l', 'l', 'o']
print(list([11, 22, 33, 44])) # [11, 22, 33, 44]
print((list({'username':"kevin", "age":20})))  # ['username', 'age']
print(list((11, 22, 33, 44)))  # [11, 22, 33, 44]
print(list({11, 22, 33, 44}))  # [33, 11, 44, 22]

列表的增加和修改

my_friends = ['tony', 'jason', 'tom', 4, 5]
​
1.修改值
my_friends[0] = 'tom'  #根据值的索引修改
print(my_friends)  #['tom', 'jason', 'tom', 4, 5]
​
2.添加值(append)
my_friends.append(666)
my_friends.append(777)  #['tony', 'jason', 'tom', 4, 5 ,666 , 777]
my_friends.append(888)  # 追加到末尾位置
print(my_friends)  #['tony', 'jason', 'tom', 4, 5 ,666 , 777 ,888]
​
3添加值(insert)
my_friends.insert(0, 999)  #insert(索引,添加的值)
my_friends.insert(1, 999)
print(my_friends)  #[999,999,'tony', 'jason', 'tom', 4, 5]
​
4.添加值(extend)
my_friends.append([11, 22, 33, 44])  # 把列表的整体添加到末尾  
#['tony', 'jason', 'tom', 4, 5, [11, 22, 33, 44]]
 my_friends.extend([11, 22, 33, 44])    # 列表的合并  
#['tony', 'jason', 'tom', 4, 5, 11, 22, 33, 44]
​
5.长度(len)
print(len(my_friends)) #5

列表的删除

'''删除'''
my_friends = ['tony', 'jason', 'tom', 4, 5, 6, 7, 8]
# del # delete
1. 第一种方式(del)
# del my_friends[0]  # ['jason', 'tom', 4, 5, 6, 7, 8]
# del my_friends[0]  #['tom', 4, 5, 6, 7, 8]
# del my_friends[4]
# print(my_friends)
​
2. 第二种方式(remove)
# aa = my_friends.remove('jason')  # 括号中直接写删除的元素。可不是索引
# print(aa) # None 空
# print(my_friends)
​
3. 第三种方式(pop)
# my_friends.pop()  # 弹出元素
# my_friends.pop()
# my_friends.pop()
# aa = my_friends.pop()
# print(aa)
s = my_friends.pop(1)  # 可以把删除的元素存储起来
print(s)
print(my_friends)

可变类型与不可变类型

"""
    可变类型:列表 字典  集合
        值改变,内存地址没有改变
    不可变类型:整型 浮点型 字符串 
        值改变,内存地址也改变
"""
posted @ 2023-02-21 16:58  无敌大帅逼  阅读(23)  评论(0)    收藏  举报