Python输出由1,2,3,4组成的互不相同且无重复的三位数

yipeiwu_com6年前Python基础

题目:有四个数字: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组成的互不相同且无重复的三位数的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

python生成多个只含0,1元素的随机数组或列表的实例

如下所示: >>> import numpy as np >>> myarray= np.random.randint(0,2,10)输出只含0,...

python数据处理 根据颜色对图片进行分类的方法

python数据处理 根据颜色对图片进行分类的方法

前面一篇文章有说过,利用scrapy来爬取图片,是为了对图片数据进行分类而收集数据。 本篇文章就是利用上次爬取的图片数据,根据图片的颜色特征来做一个简单的分类处理。 实现步骤如下: 1:...

Python中filter与lambda的结合使用详解

filter是Python的内置方法。 官方定义是: filter(function or None, sequence) -> list, tuple, or string...

Python利用BeautifulSoup解析Html的方法示例

介绍 Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少...

Python 类的继承实例详解

Python 类的继承详解 Python既然是面向对象的,当然支持类的继承,Python实现类的继承比JavaScript简单。 Parent类: class Parent:...