beirry
发表于 2019-10-29 07:35:36
刚开始学习哈哈哈
for a in range(1,5):
for b in range(1,5):
for c in range(1,5):
if i != a and a != b and b != c:
print("%d%d%d" % (a,b,c))
lilinru75
发表于 2019-11-12 05:25:23
强大的 itertools
import itertools
a = range(1,5)
y = list(itertools.permutations(a,3))
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)
xinyun
发表于 2019-11-12 14:59:05
for x in range(1,5):
for y in range(1,5):
for z in range(1,5):
if x != y andx != z and y != z:
print(x,y,z)
开心就好了吧
发表于 2019-11-12 20:28:48
for u in range(1,5):
for m in range(1,5):
for w in range(1,5):
if u!=m and u!=w and m !=
end=int('u'+'m'+'w')
print(end)
开心就好了吧
发表于 2019-11-12 20:30:48
for u in range(1,5):
for m in range(1,5):
for w in range(1,5):
if u!=m and u!=w and m !=w:
end=int('u'+'m'+'w')
print(end)
len(print)
newbison
发表于 2019-11-13 10:19:53
本帖最后由 newbison 于 2019-11-13 10:20 编辑
list = [(x, y, z) for x in range(1, 5) for y in range(1, 5) for z in range(1, 5) if x != y if x != z if y != z]
print(list)
print(len(list))
学Python不开车
发表于 2019-11-16 10:44:48
for x in range(1,5):
for y in range(1,5):
for z in rang(1,5):
if x!=y and y!=z and x!=z:
#(此处不能写x != y != z,否则会出现 x和z相等的情况,如121 131等,至于为啥我还不知道)
print(x,y,z)
15891720771
发表于 2019-11-19 14:32:24
a = []
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):
a.append(100*i+10*j+k)
print('一共有%d个三位数,分别是:\n'%len(a),a)
Jung
发表于 2019-11-19 15:59:30
def fun2(a,b,c,d):
L1 = []
for N1 in (a,b,c,d):
for N2 in (a,b,c,d):
for N3 in (a,b,c,d):
if((N1!=N2) and (N1!=N3) and (N2!=N3)):
L1.append(N1*100 +N2*10 + N3)
print(L1)
#试用与任意4个不相等的数字组合不重复地3位数
海月清辉
发表于 2019-11-23 13:58:35
达达里昂 发表于 2017-4-2 13:53
list = []
for x in range(1,5):
for y in range(1,5):
这个完成了所有要求
海月清辉
发表于 2019-11-23 14:21:08
新手·ing 发表于 2017-3-24 21:43
这是我的解答,欢迎大家一起交流。
亲 121 122 这种都不符合题目要求吗?
海月清辉
发表于 2019-11-23 14:23:34
伤心地铁 发表于 2017-3-24 22:08
for x in range(1,5):
for y in range(1,5):
for z in range(1,5):
假如 if x != y andx != z or y != z: 会怎么样?
llbb6458
发表于 2019-11-26 22:53:09
for i in range(1,5):
for j in range(1,5):
for k in range(1,5):
if i != j != k:
print("{}{}{}".format(i,j,k))
让三个数连贯起来了看的更舒服一点
天下一统2014
发表于 2019-11-30 21:05:46
i = []
for a in range(1,5):
for b in range(1,5):
for c in range(1,5):
d = a*100+b*10+c
if d not in i:
i.append(d)
print(len(i))
print(i)
Python学好
发表于 2019-12-7 11:18:34
a=[]
b=
for i in b:
for j in b:
for k in b:
if (i!=j) and (j!=k) and (k!=i):
c=i*100+j*10+k
a.append(c)
print(a)
yang123ke
发表于 2020-1-9 06:40:02
学习到了
Yl10
发表于 2020-1-9 14:15:21
list=[]
for x in range(1,5):
for y in range(1,5):
for z in range(1,5):
if x!=y and x!=z and y!=z:
a=100*x+10*y+z
list.append(a)
print('一共有',len(list),'种组合')
print('分别为',list)
ka233siji
发表于 2020-1-16 09:15:00
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:
print(i,j,k)
count+=1
print(count)
ouyunfu
发表于 2020-2-11 06:57:06
def f1(L):
count=0
for i in L:
L1=L.copy()
L1.remove(i)
for j in L1:
L2=L1.copy()
L2.remove(j)
for k in L2:
print(i*100+j*10+k)
count+=1
return count
print(f1())
Geoffreylee
发表于 2020-2-11 11:50:27
求个通解
from functools import reduce
# 初始数字列表
list_num =
# 要组成多少位互不相同且无重复的数字
n = 4
# 辅助列表
num_s = []
num_lst = []
def f(lst, n):
global num_s
global num_lst
# 递归出口
if len(num_s) == n:
i = reduce(lambda x, y: x*10+y, num_s)
num_lst.append(i)
else:
for i in range(len(lst)):
# 从列表弹出,获取数字
num = lst.pop(i)
# 压栈
num_s.append(num)
# 递归
f(lst, n)
# 出栈
num_s.pop()
# 归还数字到原列表
lst.insert(i, num)
f(list_num, n)
print('满足条件有{}个:'.format(len(num_lst)))
print(num_lst)
页:
2
3
4
5
6
7
8
9
10
11
[12]
13
14
15