z1446773686 发表于 2018-2-6 11:52:13

z1446773686 发表于 2018-2-6 11:19
count = 0
grade = []
for x in range(1,5):


count = 0
grade = []
for x in range (1,5):
                for y in range (1,5):
                              for d in range (1,5):
                                                 if ((x != y) and ((y != d)and (x != d))):
                                                                count += 1
                                                                n = str(x) ; b = str(y) ; a = str(d)
                                                                grade.append(list(zip(n,b,a)))
print('内容如下:')
for each in grade:
                print(each)
print ('排列个数为:%d' % count )
print(grade)
运行内容:
内容如下:
[('1', '2', '3')]
[('1', '2', '4')]
[('1', '3', '2')]
[('1', '3', '4')]
[('1', '4', '2')]
[('1', '4', '3')]
[('2', '1', '3')]
[('2', '1', '4')]
[('2', '3', '1')]
[('2', '3', '4')]
[('2', '4', '1')]
[('2', '4', '3')]
[('3', '1', '2')]
[('3', '1', '4')]
[('3', '2', '1')]
[('3', '2', '4')]
[('3', '4', '1')]
[('3', '4', '2')]
[('4', '1', '2')]
[('4', '1', '3')]
[('4', '2', '1')]
[('4', '2', '3')]
[('4', '3', '1')]
[('4', '3', '2')]
排列个数为:24
[[('1', '2', '3')], [('1', '2', '4')], [('1', '3', '2')], [('1', '3', '4')], [('1', '4', '2')], [('1', '4', '3')], [('2', '1', '3')], [('2', '1', '4')], [('2', '3', '1')], [('2', '3', '4')], [('2', '4', '1')], [('2', '4', '3')], [('3', '1', '2')], [('3', '1', '4')], [('3', '2', '1')], [('3', '2', '4')], [('3', '4', '1')], [('3', '4', '2')], [('4', '1', '2')], [('4', '1', '3')], [('4', '2', '1')], [('4', '2', '3')], [('4', '3', '1')], [('4', '3', '2')]]

DoMeinoz 发表于 2018-2-8 13:38:58

nums = []
for i in range(1,5):
    for j in range(1,5):
      for k in range(1,5):
            if i != j and i != k and j != k:
                num = i * 100 + j * 10 + k
                nums.append(num)
print(nums)
print(len(nums))

小雪花花123 发表于 2018-2-9 13:33:33

count = 0

for i in range(1,5):

    for j in range(1,5):

      for k in range(1,5):

            if i != k and i != j and j != k:

                count +=1

                print(count,i*100+j*10+k,'\n')

keshen 发表于 2018-2-11 12:02:00

def test1():
    for a in range(1,5):
      for b in range(1, 5):
            for c in range(1, 5):
                if a != b and a != c and b != c:
                  print (a, b, c)

理想小青年 发表于 2018-2-11 15:03:52

都乱写代码我也来说说,其实很简单嵌套三个for循环,下面我就帮助一些刚学习for的整理一下思路
for i in range(1,4): #这是控制百位1,4循环
    for ii in range(1,4): #控制十位的1,4循环 只有等嵌套里面循环都循环完毕才可开启新一轮
      for iii in range(1,4): #控制个位l1,4循环
            if i != !! and ii != iii and i != !!!: #条件控制 百位不等于十位,十位不等于个位,百位不等于各位
                print (i,ii,iii) #拼接每次循环结果输出
就像我们打字111,112,113,114,121,122,123,124,循环的规律可见而知{:10_249:}
加油加油



凌九霄 发表于 2018-2-13 09:20:19

本帖最后由 凌九霄 于 2018-2-13 09:22 编辑

import itertools
for i in list(itertools.permutations(range(1,5),3)):
    print("{0}{1}{2}".format(i,i,i))

ultraji 发表于 2018-2-18 20:59:19

from itertools import combinations
print(list(combinations(range(1,5),3)))

miraclexy 发表于 2018-2-19 13:51:54

a=0
for i in :
    for j in :
      for k in :
            number=100*i+10*j+k
            if i!=j and i!=k and j!=k:
                a+=1
                print(number)
            else:
                continue
               
print(a)

python~ 发表于 2018-2-19 16:39:17

for i in range(1,5):
    for j in range(1,5):
      for k in range(1,5):
            if i != k and i != j and j != k:
                print(i,j,k)

lchelement 发表于 2018-2-24 19:38:10

for i in range(1,5):
    for j in range(1,5):
      for k in range(1,5):
            if i != j and i != k and j !=k:
                print(i,j,k)

Joey_Cai 发表于 2018-2-26 17:26:05

m = 0
for i in range(1,5):
    for j in range(1,5):
      for k in range(1,5):
            if i != k and i != j and j != k:
                print(i,end = '')
                print(j,end = '')
                print(k)
                m = m+1
print('\n',m)

Joey_Cai 发表于 2018-2-26 17:30:59

m = 0
for i in range(1,5):
    for j in range(1,5):
      for k in range(1,5):
            if i != k and i != j and j != k:
                print(i,end = '')
                print(j,end = '')
                print(k)
                m = m+1
print('\n','有%d种组合'%m)

victor.xu 发表于 2018-3-1 12:56:17

lis = []
for i in range(1, 5):
    for j in range(1, 5):
      for k in range(1, 5):
            if i != j and i != k and j != k:
                print(i * 100 + j * 10 + k)
                lis.append(i * 100 + j * 10 + k)
print("共组成数字:")
print(len(lis))

victor.xu 发表于 2018-3-1 13:46:16

lis = []
for i in range(1, 5):
    for j in range(1, 5):
      for k in range(1, 5):
            if i != j and i != k and j != k:
                print(i * 100 + j * 10 + k)
                lis.append(i * 100 + j * 10 + k)
print("共组成数字:")
print(len(lis))

瞬秒爆加速 发表于 2018-3-2 13:22:17

a=set()
for i in range(1,5):
    for ii in range(1,5):
      for iii in range(1,5):
            a.add(i*100+ii*10+iii)
print(a)

Niklaus_ncl 发表于 2018-3-5 22:08:07

def number():
    for i in range(1,5):
      for j in range(1,5):
            for k in range(1,5):
                if (i == j) or (j == k) or (i == k):
                  continue
                print(100*i + 10*j + k)

number()

benzhj 发表于 2018-3-6 10:38:52

l =
v = []
for i in l:
    for n in l:
      if i==n:
            continue
      for x in l:
            if x==n or x==i:
                continue
            v.append(i*100+n*10+x)
print (v)

Harlie 发表于 2018-3-7 18:07:21

for i in range(1,5):
    for j in range(1,5):
      for k in range(1,5):
            if i !=j!=k:
                print (i,j,k)

新手潘包邮 发表于 2018-3-9 23:18:27

看完评论长见识了,原来还有itertool模块

tianqi85 发表于 2018-3-13 09:42:45

本帖最后由 tianqi85 于 2018-3-13 09:48 编辑

num=list(range(1,5))
new=[]
for a in num:
    for b in num:
      for c in num:
            new.append(int(str(a)+str(b)+str(c)))
print (new)
print (len(new))
页: 1 2 3 4 5 [6] 7 8 9 10 11 12 13 14 15
查看完整版本: Python:每日一题 1