这篇文章主要介绍了Python中如何输出由1,2,3,4组成互不相同且无重复的三位数,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。
方法1:
#!/usr/bin/python # -*- coding: UTF-8 -*- 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
上面实例输出如下:
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
方法2:
用集合去除重复元素
#!/usr/bin/env python #-*- coding:utf-8 -*- import pprint list_num = ['1','2','3','4'] list_result = [] for i in list_num: for j in list_num: for k in list_num: if len(set(i + j + k)) == 3: list_result += [int(i + j + k)] print("能组成%d个互不相同且无重复数字的三位数:"%len(list_result)) pprint.pprint(list_result)
输出结果和上面一样,不过有一点,是以集合的形式输出的。
感谢你能够认真阅读完这篇文章,希望小编分享的“Python中如何输出由1,2,3,4组成互不相同且无重复的三位数”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。