Pyhon 2 day
- List
#!/urs/bin/env python
# -*- coding:utf-8 -*-
# Author:white
names=['white','ying','qinghua',['rich','smart'],'fang','baby']
names2=['Bai',"2liu",'qu,','bai','#child']
'''
print(names)
print(names[0])
print(names[-1])
print(names[2:4])
print(names[:2])
print(names[-3:])
print(names[0:4:2]) #跳着打印lise
print(names[::])
'''#list切片
#names.append('grandma') #append list末尾添加
#names.insert(2,'grandma') #insert list位置插入
#names[2]='grandma' #直接加位置替换list元素
#names.remove('qinghua') #remove 知道list中的元素删除
#del names[2] #del 知道元素位置删除
#names.pop() #pop 不输入下标时,删除list中最后一个元素
#names.pop(2) #pop 输入下标时,删除下标位置的元素
#print(names2.index('liu')) #index 在list中查找元素位置
#print(names2[names2.index('liu')]) #index 在list中查找元素位置,并打印
#print(names2.count('bai')) #count 在list中查找某元素的数量
#names2.clear() #clear 清空lisr
#names2.reverse() #reverse 翻转list
#names2.sort() #sort 把list中的元素按特殊符号、数字、大写、小写的顺序排列
#names2.extend(names) #extend 合并两个list
#del names
'''
import copy
names3=copy.deepcopy(names)
print(names)
print(names3)
names[2]='grandma'
names[3][0]='achievement'
print(names)
print(names3)
'''#copy 复制list,deepcopy 深度copy #直接用copy时对list只copy第一层,调用copy模块用deepcopy则可以完全copy list
'''
for i in names:
print(i)
'''#list 循环
'''
for i in names[0:4:2]:
print(i)
'''#list跳着循环
- tuple
names=('bai','ming','lei','bai') print(names.count('bai')) print(names.index('bai')) #tuple只有count,index两种语法
- shopping trollye
product_list=[('huawei',10000),
('apple',8000),
('vivo',5000),
('oppo',4500),
('xiaomi',4000),
('meizu',3500)
]
shopping_trolley_list=[]
while True:
your_salary = input('your_salary:')
if your_salary.isdigit():
your_salary = int(your_salary)
while True:
for index, item in enumerate(product_list):
print(index, item)
# print(product_list.index(item),item)
your_choice = input("your_choice:")
if your_choice.isdigit():
your_choice = int(your_choice)
if your_choice < len(product_list) and your_choice >= 0:
p_item = product_list[your_choice]
if p_item[1] <= your_salary:
shopping_trolley_list.append(p_item)
your_salary -= p_item[1]
print("added %s into shopping trolley,your current balance is \033[31;1m%s\033[0m" % (
p_item, your_salary))
else:
print("\033[32;1myou are left with a balance of\033[0m \033[31;1m%s\033[0m" % (your_salary))
else:
print("The item you entered could not be found!")
elif your_choice == "q":
print("--------shopping trolley list--------")
for p in shopping_trolley_list:
print(p)
print("your current balance \033[31;1m%s\033[0m" % (your_salary))
exit()
else:
print("input error!")
else:
print("input error")
- string 操作
name='my name is baiminglei'
print(name.capitalize())#string 首字母大写
print(name.count('i'))#string 字母计数
print(name.center(50,'-'))#一共打印50个字符,将name字符串放中间,不足的用‘-’补齐
print(name.endswith('lei'))#判断string是否以已知字母结尾
print(name.expandtabs(tabsize=30))#当字符串中有\t 时将空格赋予数字
print(name.find('is'))#查找字符串字母位置
print(name[name.find("n"):])#字符串的切片
'''
name='my name is {name} and im {age} old'
print(name.format(name='baiminglei',age=27))#格式化两种形式
print(name.format_map({'name':'baiminelei','age':27}))
print(name.index('n'))#查找字符位置
print('asd123'.isalnum())#判断字符串是否为阿拉伯数字和字母
print('asdASD'.isalpha())#判断字符串是否为纯英文字符
print('10'.isdecimal())#判断字符串是否为十进制
print(name.isdigit())#判断字符串是否为整数
print(name.isidentifier())#判断是否为合法的标识符
print(name.islower())#判断是否为小写
print(name.isupper())#判断是否全是大写
print(name.istitle())#判断是否首字母大写
print(name.isnumeric())#判断是否只有数字
print(name.isspace())#判断是否为空格
print(name.isprintable())#判断是否能打印
print('_'.join(['1','2','3']))#将列表变成字符串,并加分隔符
print(name.ljust(50,'*'))#将字符串后面补足长度
print(name.rjust(50,'*'))#将字符串前面补足长度
print('ASSDFFS'.lower())#将字符串大写变成小写
print('asdfg'.upper())#将字符串小写变成大写
print('\nbaiminglei\n'.lstrip())#将字符串从左边去掉空格和回车
print('\nbaiminglei\n'.rstrip())#将字符串从右边去掉空格和回车
p=str.maketrans('asdfgh','123456')#将字符串一一对应后传到后续字符串中
print('baiminglei'.translate(p))
print('baiminglei'.replace('i','I',2))#将字符串中字符替换,并可规定替换个数
print('baiminglei'.rfind('i'))#找到字符串中字符的最右一个的下标
print('baiminglei'.split('i'))#将字符串按对应字符分成列表
print('bai\nming\n;lei'.splitlines())#将字符串按不同系统的换行分成列表
print('baiMINGlei'.swapcase())#将字符串大小写颠倒
print('baiminglei'.zfill(50))#将字符串用0补齐
- dictionary
info={
'NO1':'Python',
'NO2':'English',
'NO3':'一级注册消防工程师',
'NO4':'经济学'
}
'''
#查
print(info['NO3'])
#改
info['NO1']='java'
print(info)
#增
info['no5']='java'
print(info)
#删
del info['NO4']
print(info)
info.pop('NO2')
print(info)
#查
print(info.get('NO3'))
#判断此key是否在字典里
print('NO2'in info)
'''
'''
city={
"山东":{
"济南":{
"历城区":["烤鱼","大虾","牛排"],
"历下区":["肉夹馍","饺子","小笼包"],
"槐荫区":["七天","如家","汉庭"]
},
"威海":{
"文登区":["沙河","三里桥","东街"],
"荣成市":["步行街","小吃街","王府井"],
"乳山市":["海参区","鲍鱼区","大虾区"]
},
"烟台":{
"蓬莱市":["小面","油条","油炸糕"],
"莱山区":["烟职","工商","商务"],
"芝罘区":["火车站","汽车总站","青年路汽车站"]
}
},
"河北":{
"石家庄":{
"长安区":["南街","北街","西街"],
"桥东区":["东门","西门","北门"],
"桥西区":["东床","西床","北床"]
},
"承德":{
"避暑":["东墙","西墙","南墙"],
"山庄":["东山","西山","北山"],
"大桥":["东河","西河","北河"]
},
"雄安新区":{
"P城":["防区","街道","塔楼"],
"Y城":["一楼","二楼","三楼"],
"机场":["C楼","跑道","大厅"]
}
}
}
#改
city['山东']['烟台']['蓬莱市'][2]='手抓饼'
#setdefaulf,到字典中取key,取到则返回原key中的值,取不到则添加这个key和value
city.setdefault('山东',{'烟台':{'蓬莱市':'手抓饼'}})
print(city)
'''
info={
'NO1':"Python",
'NO2':"English",
'NO3':"一级注册消防工程师",
'NO4':"经济学"
}
b={
'NO1':"JAVA",
'NO5':"C",
'NO6':"C#"
}
info.update(b) #update 合并更新字典
print(info)
print(info.items()) #item 将字典变成列表
c=dict.fromkeys([6,7,8]) #fromkeys 创建新字典,且创建时注意创建多层时会同步删改数据
print(c)
#字典循环
for i in info:
print(i,info[i])
#先变列表在循环
for k,v in info.items():
print(k,v)
#三级菜单
city={
"山东":{
"济南":{
"历城区":["烤鱼","大虾","牛排"],
"历下区":["肉夹馍","饺子","小笼包"],
"槐荫区":["七天","如家","汉庭"]
},
"威海":{
"文登区":["沙河","三里桥","东街"],
"荣成市":["步行街","小吃街","王府井"],
"乳山市":["海参区","鲍鱼区","大虾区"]
},
"烟台":{
"蓬莱市":["小面","油条","油炸糕"],
"莱山区":["烟职","工商","商务"],
"芝罘区":["火车站","汽车总站","青年路汽车站"]
}
},
"河北":{
"石家庄":{
"长安区":["南街","北街","西街"],
"桥东区":["东门","西门","北门"],
"桥西区":["东床","西床","北床"]
},
"承德":{
"避暑":["东墙","西墙","南墙"],
"山庄":["东山","西山","北山"],
"大桥":["东河","西河","北河"]
},
"雄安新区":{
"P城":["防区","街道","塔楼"],
"Y城":["一楼","二楼","三楼"],
"机场":["C楼","跑道","大厅"]
}
}
}
exit_flag=False
while not exit_flag:
for i in city:
print(i)
choice=input('请输入选择1:')
if choice in city:
while not exit_flag:
for i2 in city[choice]:
print(i2)
choice2=input('请输入选择2:')
if choice2 in city[choice]:
while not exit_flag:
for i3 in city[choice][choice2]:
print(i3)
choice3=input('请输入选择3:')
if choice3 in city[choice][choice2]:
for i4 in city[choice][choice2][choice3]:
print(i4)
choice4=input('按‘b’返回上一级,按‘q’退出:')
if choice4=='b':
pass
if choice4=='q':
exit_flag=True
if choice3=='b':
break
if choice3 == 'q':
exit_flag = True
if choice2=='b':
break
if choice2 == 'q':
exit_flag = True
if choice=='b':
break
if choice == 'q':
exit_flag = True