1、列表与元组的区别是什么?
列表是可变序列 元租是不可变序列
2、结合具体的代码案例说明演示字典的有排和字典的排序
字典的有序
from collections import OrderedDict
data=OrderedDict()
data['name']='liu lele'
data['age']=24
data['address']='xian'
dict1=dict(data)
print(dict1)
字典的排序
print(dict(sorted(dict1.items(),key=lambda s:s[0])))
dict1={'name':'liu lele','age':24,'city':'宝鸡'}
data=dict(sorted(dict1.items(),key=lambda s:s[0]))
print(data)
3、使用列表推导式实现取出100数字以内整除2的数字
print([i for i in range(100) if i%2==0])
4、在如下数据中获取学生成绩,输出如下几点:
A、学生最大,最小,平均成绩
B、过滤出成绩大于等于60的学生成绩
C、过滤出成绩小于60分的
dict1={'status':0,'msg':'msg','data':[
{'name':"lisi","score":"90"},
{'name':"wangwu","score":"60"},
{'name':"lisi1","score":"88"},
{'name':"lisi2","score":"59"},
{'name':"lisi3","score":"24"},
{'name': "lisi4", "score": "66"},
{'name': "lisi5", "score": "70"},
{'name': "lisi6", "score": "45"},
{'name': "lisi7", "score": "39"}
]}
A、学生最大,最小,平均成绩
list1=[]
for item in dict1['data']:
list1.append(int(item['score']))
print('最大',max(list1))
print('最小',min(list1))
print('平均',sum(list1)/len(list1))
B、过滤出成绩大于等于60的学生成绩
print([i for i in list1 if i>=60])
C、过滤出成绩小于60分的
print([i for i in list1 if i<60])
5、结合函数的返回值编写一个案例
def login(username='liu lele',password='123'):
if username=='liu lele' and password=='123':
return True
else:
return False
def profile():
if login():
print('查看个人主页')
else:
print('重新登陆')
profile()
6、什么是序列化与反序列化,结合字典编写,结合文件实现
'''序列化:把Python对象(字典,列表,元组)转为字符串的过程
反序列化:把字符串转为Python对象(字典,列表,元组)的过程
'''
'''字典序列化与反序列化'''
import json
dict1={'name':'liu lele','age':24,'city':'宝鸡'}
dict_str=json.dumps(dict1,indent=True,ensure_ascii=False)
print(dict_str,'\n',type(dict_str))
str_dict=json.loads(dict_str)
print(str_dict,'\n',type(str_dict))
'''文件的序列化与反序列化'''
dict2={'name':'liu lele','age':24,'city':'baoji'}
json.dump(dict2,open('json.txt','w'))
data=json.load(open('json.txt','r'))
print(data)
7、获取当前时间
import datetime
print(datetime.datetime.now())
8、编写一个读取文件内容和把内容写入文件的程序
import json
def out():
username=input('请输入账户:\n')
password=input('请输入密码:\n')
return username,password
def registered():
username, password = out()
temp= username+"|"+ password
json.dump(temp,open('login.txt','w'))
def login():
username, password = out()
lists=str(json.load(open('login.txt'))).split('|')
if username==lists[0] and password==lists[1]:
return True
else:
return "你的登路账户有误,请再次检查"
def profile():
lists=str(json.load(open('login.txt'))).split('|')
print('欢迎[0]访问刘乐乐个人主页'.format(lists[0]))
def main():
while True:
try:
f = int(input('1. 注册 2. 登录 \n'))
if f==1:
registered()
elif f==2:
if login()==True:
profile()
else:
print('请输入正确的登陆账户')
else:
break
except : continue
if __name__ == '__main__':
main()
怎么取出列表中相同的数据和不同的数据?
1, 把列表转为set集合
2, 然后按照集合的交集 并集 差集
list1=["go","java","python","c"]
list2=["a","go","b","java","c"]
#交集 取出共同的数据
print(set(list1)&set(list2))
#并集 取出两个里面共同拥有的数据
print(set(list1)|set(list2))
#差集 把list1中属于list2的数据去掉
print(set(list1)-set(list2))