目录
1.字符串操作
#字符串切分
language ="pyhton and java and c++ and gplang and scala"
#split 切割字符串 生成一个列表:暂时理解为一个容器
result =language.split("and")
print(result)
#连接序列生成字符串 更split是相反的操作
lang=["English","Chinese","Jannaese"]
#通过——连接
result1="-".join(lang)
print(result1,type(result1))
#删除字符串两边的空格strip
class_name="Big Data "
print(len(class_name))
class_name_new =class_name.strip()
print(class_name_new,len(class_name_new))
#判断一个字符串是否以指定子串开始时,是的话返回true,否则就是返回false
mystr ="hello worde"
print(mystr.startswith("hello"))
print(mystr.startswith("worde"))
print(mystr.endswith("worde"))
#判断一个字符串是否以子串结束
print(mystr.startswith("hello",3,8))
print(mystr.startswith("lo",3,8))
2.判断操作
所谓判断即是判断真假,返回的结果是布尔型数据类型:True 或 False。
startswith():检查字符串是否是以指定⼦串开头,是则返回 True,否则返回 False。如果设置开 始和结束位置下标,则在指定范围内检查。
#列表[],然后里面可以是任何类型的数据
name_list=["James", "蔡徐坤", "罗志祥", "格林",2001]
print(name_list, type(name_list), len(name_list))
print(name_list[0])
print(name_list[1])
print(name_list[2])
print(name_list[3])
print(name_list[4])
#在指定的范围内查找找到返回所在位置,没有找到则报错
print(name_list.index("格林",0,4))
name_list1=["蒋璐","无凭语","李隆博","蒋璐"]
result=name_list1.count("蒋璐")
result1=name_list1.count("无凭语")
result2=name_list1.count("李隆博")
print(result,result2,result1)
#计算列表长度
print(len(name_list1))
print(len(name_list))
name_list2=["聊景观","涛涛","陆涛","高于"]
print("涛涛" in name_list2)
print("聊景观" in name_list2)
print("陆涛" in name_list2)
print("高于" in name_list2)
#添加一个元素
name_list2.append("杨祝峰")
print(name_list2)
#追加一个序列
name_list2.append(["张伟","孙涛"])
print(name_list2)
#追加一个序列将序列的值一个一个加入进去
name_list2.extend(["刘小锋","宴请"])
print(name_list2)
#在指定的地方插入
name_list2.insert(1, "良好")
print(name_list2)
3.删除操作
#删除列表
name_list1=["张飞","关羽","刘备"]
print("删除前:",name_list1)
del name_list1
#删除之后 报错吧存在
# print("删除后:",name_list1)
#删除列表中的指定元素
name_list2=["孙悟空","八戒","沙僧","唐僧"]
del name_list2[3]
print(name_list2)
#删除指定下标的元素然后返回该元素
result1=name_list2.pop(1)
print(name_list2)
print(result1)
#pop没有参数默认删除最后一个元素
name_list3=["帅帅","东东","庚庚"]
result2=name_list3.pop()
print(result2)
print(name_list3)
#remove删除指定元素
name_list4=["甜甜","浩浩","好好"]
name_list4.remove("浩浩")
print(name_list4)
#清空列表
name_list4.clear()
print(name_list4)
#修改·列表
name_list5=["笑笑","昊昊","凤姐"]
name_list5[0]="荣荣"
print(name_list5)
#列表反转没有返回值
name_list5.reverse()
print(name_list5)
#排序 默认从小到大
score_list=[35,89,77,0]
score_list.sort()
print(score_list)
#从大到小
score_list.sort(reverse=True)
print(score_list)
#复制列表
height_list=[158,138,186,195]
height_list_new=height_list.copy()
print("新的复制列表",height_list_new)
print("原来的列表",height_list)
4.列表循环
遍历就是从头到尾,依次从列表中获取数据,在循环体内部针对每一个元素,执行相同的操作。
#while 循环列表
country_list=["乌克兰","俄罗斯","漂亮国","中国"]
i=0
while i<len(country_list):
print(i,country_list[i])
i+=1
#for循环
scenery_list=["船舶大楼","毛家无偿","白鹿寺","秀峰公园"]
#通过这个临时变量 挨个取列表里的数据 从头到尾 没有更多数据结束
for j in scenery_list:
print(j)
5.循环嵌套
列表嵌套指的就是⼀个列表⾥⾯包含了其他的⼦列表。
import random
name_list=[["红红","微微"],["天天","顺顺"],"廖警官"]
#链表嵌套
print(name_list[0])
print(name_list[0][1])
#练习
# 有3个办公室,但是有8个老师,随机分配办公室
office =[[],[],[]]
teacher=["a","b","c","d","e","f","g","h"]
for teacher in teacher:
num =random.randint(0,2)
office[num].append(teacher)
print(office)
boy_list =[["吴豪","188cm","200万","8分"],
["吕浩","181cm","15000万","5分"],
["孙涛","138cm","100万","3分"]
]
i = 0
while i < 3 :
# 资产1000万以上 直接相亲成功 否则筛选其他条件进入else
if boy_list[i][2][:-1] >= "15000" :
print(f"{boy_list[i][0]}相亲成功")
# 三个条件 使用切割把后面切掉
else:
if (int(boy_list[i][1][:-2]) >= 185) and (int(boy_list[i][3][:-1]) >= 8) and (int(boy_list[i][2][:-1]) >= 200):
print(f"{boy_list[i][0]}相亲成功")
else:
print(f"{boy_list[i][0]}相亲失败!")
i+= 1