10.15例题

99乘法表

*************************************************

v = '{0}*{1}={2}'
c = ''
for a in range(1, 10):
for b in range(1, 10):
if b < a:
s = '\t\t'
c += s
else:
if b == 9:
s = v.format(a, b, a*b) + '\n'
c += s
else:
s = v.format(a, b, a * b) + '\t'
c += s
print(c)

**********************************************************

for y in range(1, 10):
for i in range(1, y+1):
print(str(i) + '*' + str(y) + '=' + str(i * y)+'\t',end='')
print('\n', end='')

***********************************************************
仔细分析构思,明确需求
最简洁的往往是最好的
虚心学习

####################################################################################

公鸡5文一只,母鸡3文一只,小鸡1只三文,用100文买100之鸡。公鸡,母鸡,小鸡都要有。公鸡,母鸡,小鸡各买多少只刚好凑足100文。

**************************************************************
c = 0
for s in range(0, 100, 5):
if 0 < s * 3 < 100:
for i in range(1, s):
print(str(100-3*s), str(i), str(s - i))
c += 1
else:
pass
print('共有' + str(c)+'种方案')

**************************************************************

for x in range(1, 100):
for y in range(1, 100):
for z in range(1, 100):
if x + y + z == 100 and 5*x + 3*y + z/3 == 100:
print(x, y, z)
else:
pass

**************************************************************

for x in range(1, 100//5):
for y in range(1, 100//3):
for z in range(0, 100, 3):
if z != 0 and x + y + z == 100 and 5*x + 3*y + z/3 == 100:
print(x, y, z)
else:
pass

**************************************************************

仔细了解需求
尽量运用计算机处理逻辑问题
减少不必要运算,尽量提高运行速度


line:
egon male 18 3000
alex male 38 30000
wupeiqi female 28 20000
yuanhao female 28 10000
with open('linew','r',encoding='utf-8') as f:
    x =(line.strip().split() for line in f)
    y = [{'name':name,'sex':sex,'age':age,'gg':gg} for name,sex,age,gg in x]

print(max(y,key=lambda x:x['gg']))

print([{'name':i['name'].capitalize(),}for i in y ])

print([i for i in y if not i['name'].startswith('a')])

 










posted @ 2018-10-15 12:05  brzp97  阅读(121)  评论(0)    收藏  举报