鱼C论坛

 找回密码
 立即注册
楼主: 新手·ing

[技术交流] Python:每日一题 1

  [复制链接]
发表于 2017-8-16 20:01:34 | 显示全部楼层
list=[]
for i in range(1,5):
    for j in range(1,5):
        if j==i:
            continue
        for k in range(1,5):
            if k == j or k == i:
                continue
            else:
                a=100*i+10*j+k
                list.append(a)
print('组合数:',len(list))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-19 21:24:05 | 显示全部楼层
  1. list1 = []
  2. for i in range(1,5):
  3.         for j in range(1,5):
  4.                 for k in range(1,5):
  5.                         if i != j and j != k and k != i:
  6.                                 list1.append(i * 100 + j * 10 + k)
  7. print('共有%d个!'% len(list1))
  8. print('分别是:',end = '')
  9. for each in list1:
  10.     print(each,end = ' ')
复制代码

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-4 00:17:41 | 显示全部楼层
  1. count = 0
  2. print "The number is: "
  3. for i in range(1, 5):
  4.     for j in range(1, 5):
  5.         for k in range(1, 5):
  6.             if (i != j) and (j != k) and (i != k):
  7.                 count += 1
  8.                 print i * 100 + j * 10 + k,
  9.                 if count % 4 == 0:
  10.                     print            
  11. print "The count of number is:", count
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-5 21:48:45 | 显示全部楼层
本帖最后由 Jocks 于 2017-9-5 22:00 编辑

count = 0
for num1 in range(1,5):
    for num2 in range(1,5):
        for num3 in range(1,5):
            if num1 != num2 and num1 != num3 and num2 != num3:
                print('%d%d%d'%(num1,num2,num3))
                count += 1
print('总共有%d个数符合条件' % count)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-11 10:07:00 | 显示全部楼层
  1. def countshow(list0 = [1,2,3,4]):

  2.     count = 0
  3.     listf = []
  4.     for h in list0:
  5.         list0.remove(h)
  6.         list1 = list0.copy()
  7.         list0.append(h)
  8.         for d in list1:
  9.             list1.remove(d)
  10.             list2 = list1.copy()
  11.             list1.append(d)
  12.             for u in list2:
  13.                 count += 1
  14.                 listf.append(100 * h + 10 * d + u)

  15.     print('满足条件的共有:' + str(count) + '个')
  16.     print(listf,end = ' ')

  17. listt = [2,3,4,5,6]
  18. countshow(listt)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-12 09:46:20 | 显示全部楼层

>>> tuple1 = (1, 2, 3, 4)
>>> tuple1
(1, 2, 3, 4)
>>> for each1 in tuple1:
                    for each2 in tuple1:
                        for each3 in tuple1:
                                print(each1, each2, each3)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-13 14:29:10 | 显示全部楼层
for i in range(1,5):
    for j in range(1,5):
        for k in range(1,5):
            if i!=j and j!=k and i!=k:
                print(i,j,k,sep='',end=' ')           
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-13 16:48:14 | 显示全部楼层
plan A
  1. list1 = [1,2,3,4]
  2. list2 = []
  3. for aa in list1:
  4.     for bb in list1:
  5.         if bb == aa:
  6.             continue
  7.         for cc in list1:
  8.             if cc == bb or cc == aa:
  9.                 continue
  10.             list2.append(int(str(aa) + str(bb) + str(cc)))

  11. print(len(list2))
  12. print()
  13. print(list2)
复制代码


plan B

  1. list1 = []
  2. list2 = []
  3. for i in range(1,5):
  4.     for y in range(1,5):
  5.         for x in range(1,5):
  6.             list1.append(int(str(1) + str(y) + str(x)))

  7. for aa in list1:
  8.     bb = list(str(aa))
  9.     if len(bb) == len(set(bb)):
  10.         list2.append(aa)


  11. print('总共有%d个不同的数字,他们分别是:' % len(list2))
  12. for ss in list2:
  13.     print(ss)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-13 17:13:03 | 显示全部楼层
本帖最后由 懒惰有只猫 于 2017-9-13 17:16 编辑
  1. numbers = ['1','2','3','4']
  2. results = []
  3. for i in numbers:
  4.     for j in numbers:
  5.         for k in numbers:
  6.             if (i + j + k) not in results and i != j and j != k and i != k:
  7.                 results.append(i + j + k)

  8. for result in results:
  9.     print (result)
  10. print ('-------------')
  11. print (len(results))
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-14 23:57:07 | 显示全部楼层
#-*-coding:gbk-*-
__author__ = 'chennan'
def count(w,x,y,z):
    list1=[w,x,y,z]
    list2=[]
    n3=0
    while n3<=3:
       a=list1[n3]
       n3+=1
       n2=0
       while n2<=3:
           b=list1[n2]
           n2+=1
           n1=0
           while n1<=3:
               c=list1[n1]
               n1+=1
               d=a*100+b*10+c
               list2.append(d)
    return  list2;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-21 13:49:53 | 显示全部楼层
  1. for i in range(1,5):
  2.      for j in range(1,5):
  3.         for k in range(1,5):
  4.             if i !=j and j!=k and i!=k:
  5.                 print(i,j,k)
复制代码


一题一题做
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-23 21:38:27 | 显示全部楼层
q=0
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:
                q+=1
                print(i,j,k,q)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-25 14:38:50 | 显示全部楼层
  1. for a in range(1,5):
  2.     for b in range(1,5):
  3.         for c in range(1,5):
  4.                 if a != b != c:
  5.                     print(a*100+b*10+c)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-26 16:46:22 | 显示全部楼层
for下for就行啊,从个十百位排序来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-8 19:50:32 | 显示全部楼层
本帖最后由 口可口可 于 2017-10-8 19:59 编辑
  1. list=[]
  2. for x in range(1,5):
  3.     for y in range(1,5):
  4.         if y!=x:
  5.             for z in range(1,5):
  6.                 if z!=x and z!=y:
  7.                     list.append(x * 100 + y * 10 + z)
  8. print('符合条件的数字共有%d个'%len(list))
  9. print('它们分别是:',end='')
  10. for each in list:
  11.     print(each,end=' ')
复制代码


符合条件的数字共有24个
它们分别是:123 124 132 134 142 143 213 214 231 234 241 243 312 314 321 324 341 342 412 413 421 423 431 432

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-11 22:44:55 | 显示全部楼层
大佬们好,初学者
#-*-conding:UTF-8 -*-
for a in range(1,5):
        for b in range(1,5):
                for c in range(1,5):
                        if a != b and b != c and a != c:
                                print str(a)+str(b)+str(c)  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-13 16:37:17 | 显示全部楼层
新手上路!!!
  1. temp = []
  2. for i in range(1,5):
  3.     for j in range(1,5):
  4.         for k in range(1,5):
  5.             if i != j != k:
  6.                 temp.extend([(i,j,k)])
  7. print(temp)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-14 13:01:39 | 显示全部楼层
n = 0
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:
                 n+=1
                 print(x,y,z)
print('一共有%d个数' % n)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-24 10:20:44 | 显示全部楼层
初学python  先用以前学过的一点点java写写

class Untitled {
        public static void main(String[] args) {
                int i=0;
                for(int a=1;a<=4;a++){
                        for(int b=1;b<=4;b++){
                                for(int c=1;c<=4;c++){
                                        for(int d=1;d<=4;d++){
                                                if(a!=b && a!=c && a!=d && b!=c && b!=d && c!=d){
                                                System.out.println(1000*a+100*b+10*c+d);
                                                        i++;}
                                        }
                                }
                        }       
                }
                System.out.println("一共有 "+i+" 个数");
        }
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-25 20:44:03 | 显示全部楼层
疑问,楼主看到回复下
代码if i != k and i != j and j != k: 这里只要两个就好了吧
i !=j and j !=k
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-19 22:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表