python求1234有多少组合_【python】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?...

# encoding:utf-8

# p001_1234threeNums.py

def threeNums():

'''题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?'''

print None

count = 0

nums = []

for index1 in xrange(1,5):

for index2 in xrange(1,5):

for index3 in xrange(1,5):

if index1 != index2 and index1 != index3 and index2 != index3:

num = 100 * index1 + 10 * index2 + index3

if num not in nums:

nums.append(num)

count += 1

print count

print nums

# threeNums()

# 在四个数中任意剔除一个,剩下三个的所有组合 --- 没完成,待完善

def threeNums_method1():

'''take out a digit from the four digits'''

L = [i for i in xrange(1,5)]

print L

cnt = 0

for index in xrange(4):

L1 = L[:]

del L1[index]

for index1 in xrange(3):

print '%d%d%d'%(L1[index1%3],L1[(index1+1)%3],L1[(index1+2)%3])

cnt += 1

print 'count : %d'%cnt

threeNums_method1()

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

# 最简单方法

print [(x, y, z) for x in xrange(1,5) for y in xrange(1,5) for z in xrange(1,5) if ((x != y) and (y != z) and (x != z))]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值