# 题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?、
今天同事给这个题我,想了下准备用remove去除某个元素,但remove后原始list发生了变化,无法继续循环
然后使用列表生成式生成新的list解决问题
# 题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?、
a = ['1','2','3','4']
b=[]
for i in a:
print(i)
for j in [x for x in a if x!=i]:
print(j)
for m in [x for x in a if x!=i and x!=j]:
print(m)
b.append(int(i+j+m))
print(b)
print('互不相同且无重复数字的三位数总计 %s 个'%len(b))
运行结果:
[123, 124, 132, 134, 142, 143, 213, 214, 231, 234, 241, 243, 312, 314, 321, 324, 341, 342, 412, 413, 421, 423, 431, 432]
互不相同且无重复数字的三位数总计 24 个
使用列表生成式生成去除某元素的list,循环三次得到三位数
版权声明:本文为u010244522原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。