# list学习
"""
"""
"""
# 1.中括号[]表示 里面可以是任意数据类型元组,列表
li=[1,2,4,990,2.9,"sssss",["sss","aaa"],(1,2)]
# 索引取值
print(li[3])
#2. 切片从1至3 从1至倒数第三个
print(li[1:3])
print(li[1:-3])
# 3.循环取值
for l in li :
print(l)
# 4.修改
li[1]=22
# 5.删除 删除单个 或者连续切片
del li[2]
li.remove(3)
del li[5:6]
"""
li=[1,2,4,990,2.9,"sssss",["sss","aaa"],(1,2)]
#6 字符串转换为列表
l1=list("sssssssssss")
print(l1)
#7列表转字符串
b=""
for a1 in (1,"22",3):
b=b+str(a1)
print(b)
# 8 append 追加元素
li.append(10)
# 9 复制
c=li.copy()
# 10 计算元素出现次数
s=li.count("ssss")
# 10扩展 将每一个元素存入列表
li.extend([99999,"sssssssss"])
# 11 第一次出现的位置
[11,22,11,55].index(11)
# 11 删除指定索引值,默认最后一,并返回删除元素 pop remove del
p=li.pop(1)
li.remove(4)
# 12reverse 翻转
li.reverse()
num1=[11,22,11,55]
num1.sort()
"""
# 元组 不能增加删除 修改 有序
tu = (1, 0.9, "ste", [1, 90])
print(tu[0])
print(tu[1:2])
# 字符串 列表 元祖都是可迭代对象
for item in tu:
print(item)
"""
# 字典 类似于json集合 字典的value可以是任意值 字典是无须的
info = {
"k1": 1,
"k2": True,
"k3": [
1,
[],
()
],
"k4":{
"ss": 1
}
}
"""
bool(),NOne,0,"" [] () {} 都为flase 其他为 True
# 字典的key是可以为数字,字符串,元祖 //True相当与1
info2={
2:"v1",
"key":1,
(1,2):1,
True:1
}
print(info2)
print(info["k1"])
for item in info:
print(item,info[item])
for i in info.items():
print(i)
"""
# 1.根据续写创建字典,第二参数为赋值统一
# v=dict.fromkeys(["k1","k2","k3"],1)
# print(v)
# # 2,存在取值,不存在返回默认none 和scala map.getorelse()一样
dic={
"k1":"v1",
"k2":"v2",
}
v1=dic.get("k2")
print(v1)
# 3删除并获取值
v3=dic.pop("k1",90)
print(v3)
# 设置值,已经存在返回当前key对应值,不存在则添加
v4=dic.setdefault("k3",22)
print(dic,v4)
# 跟新值
dic.update({"k1":0})
dic.update(k1=122,k2=111,k3="ss")
print(dic)
# 99
for i in range(1,10):
for j in range(1,i+1):
print(str(i)+"*"+str(j)+"="+str(i*j)+"\t",end="")
print()
# 进行数学计算 多层循环夹if 保证代码格式 缩进
for x in range(1,100//5):
for y in range(1,100//3):
for z in range(1,100):
if x+y+z==100 and 5*x+3*y+z/3==100:
print(x,y,z)