##1
sum_file = 0
with open('a.txt',encoding='utf-8') as f:
for line in f:
sum_file += len(line)
print(sum_file)
with open('a.txt',encoding='utf-8') as f:
g=(len(line) for line in f)
print(sum(g))
##2
#g是生成器,生成器的取值特性就是从头到尾取完就结束,sum迭代取值第一次就取完了,所以后面g都是0,即sum也都是0
##3
total =0
with open('shopping.txt',encoding='utf-8') as f:
for line in f:
line = line.strip('
').split(',')
price = int(line[1])*int(line[2])
total += price
print(total)
with open('shopping.txt',encoding='utf-8') as f:
g = (int(line.strip('
').split(',')[1])*int(line.strip('
').split(',')[2]) for line in f)
print(sum(g))
shopping_info = []
with open('shopping.txt',encoding='utf-8') as f:
for line in f:
line = line.strip('
').split(',')
keys = ['name','price','count']
d = {k:v for k,v in zip(keys,line)}
shopping_info.append(d)
print(d)
print(shopping_info)
shopping_info = []
with open('shopping.txt',encoding='utf-8') as f:
for line in f:
line = line.strip('
').split(',')
if int(line[1]) > 10000:
keys = ['name','price','count']
d = {k:v for k,v in zip(keys,line)}
shopping_info.append(d)
print(shopping_info)
##4
user_info = []
with open('4.txt',encoding='utf-8') as f:
for line in f:
line = line.split()
keys = ['name','sex','age','salary']
d = {k:v for k,v in zip(keys,line)}
user_info.append(d)
print(user_info)
##5
user_info = []
with open('4.txt',encoding='utf-8') as f:
for line in f:
line = line.split()
keys = ['name','sex','age','salary']
d = {k:v for k,v in zip(keys,line)}
user_info.append(d)
print(user_info)
salary_list = [int(index['salary']) for index in user_info]
# for index in user_info:
# salary_list.append(int(index['salary']))
res = max(salary_list)
with open('4.txt',encoding='utf-8') as f:
for line in f:
if res == int(line.split()[3]):
print(line)
##6
user_info = []
with open('4.txt',encoding='utf-8') as f:
for line in f:
line = line.split()
keys = ['name','sex','age','salary']
d = {k:v for k,v in zip(keys,line)}
user_info.append(d)
print(user_info)
age_info = (int(age['age']) for age in user_info)
# for age in user_info:
# age = int(age['age'])
# age_info.append(age)
for info in user_info:
if int(info['age']) == min(age_info):
print(info)
##7
user_info = []
with open('4.txt', encoding='utf-8') as f:
for line in f:
line = line.split()
keys = ['name', 'sex', 'age', 'salary']
d = {k: v for k, v in zip(keys, line)}
user_info.append(d)
print(user_info)
for name in user_info:
name['name'] = name['name'].capitalize()
print(user_info)
##8
user_info = []
with open('4.txt', encoding='utf-8') as f:
for line in f:
line = line.split()
keys = ['name', 'sex', 'age', 'salary']
d = {k: v for k, v in zip(keys, line)}
user_info.append(d)
print(user_info)
new_user_info = [aname for aname in user_info if not aname['name'].startswith('a')]
# new_user_info = []
# for aname in user_info:
# if not aname['name'].startswith('a'):
# new_user_info.append(aname)
print(new_user_info)