Python程序设计教程 练习题一
输人5个整数放到列表list1 中,输出下标及值,然后将列表listl 中大于平均值的元素组成一个新列表list2,输出平均值和列表list2。请利用列表推导式解决该问题。
print ( "输入5个整数" )
list1 = [ ]
for i in range ( 5 ) :
n = int ( input ( "输入第" + str ( i+ 1 ) + "个:" ) )
list1. append( n)
avg = sum ( list1) / len ( list1)
list2 = [ i for i in list1 if i> avg]
print ( "平均值:" , avg)
print ( list2)
编写程序,将由1、2、3、4这4个数字组成的每位数都不相同的所有三位数存人一个列表中并输出该列表。请利用列表推导式解决该问题。
a = [ 1 , 2 , 3 , 4 ]
b = [ i* 100 + j* 10 + x for i in a for j in a for x in a if i != j and j != x and i != x ]
print ( b)
编写程序,给定列表[1,9,8,7,6,5,13,3,2,1].先输出原列表,删除其中所有奇数后再输出。请利用列表推导式解决该问题。
list1= [ 1 , 9 , 8 , 7 , 6 , 5 , 13 , 3 , 2 , 1 ]
print ( "列表:" , list1)
list1= [ i for i in list1 if i% 2 == 0 ]
print ( "删除其中所有奇数:" , list1)
百钱买百鸡: -只公鸡5元钱,一只母鸡3元钱,三只小鸡1元钱,现在要用100元钱买100只鸡,问公鸡、母鸡、小鸡各多少只?请利用列表推导式解决该问题。
for i in range ( 0 , 100 ) :
for j in range ( 0 , 100 ) :
for x in range ( 0 , 100 ) :
if 5 * i+ j* 3 + x/ 3 == 100 and i+ j+ x == 100 :
print ( "公鸡:" , "母鸡:" , "小鸡:" , i, j, x)