利用Python输出由1,2,3,4,5,6,7,8组成所有的两位数
时间: 2024-05-12 16:15:49 浏览: 129
可以使用两个嵌套的for循环来实现:
```python
for i in range(1, 9):
for j in range(1, 9):
print(str(i) + str(j))
```
输出结果为:
```
11
12
13
14
15
16
17
18
21
22
23
24
25
26
27
28
31
32
33
34
35
36
37
38
41
42
43
44
45
46
47
48
51
52
53
54
55
56
57
58
61
62
63
64
65
66
67
68
71
72
73
74
75
76
77
78
81
82
83
84
85
86
87
88
```
相关问题
利用Python输出由1,2,3,4,5,6,7,8组成所有个位和十位互不相同的两位数
可以使用两个嵌套的 for 循环来实现:
```python
for i in range(1, 9):
for j in range(1, 9):
if i != j:
print(i * 10 + j)
```
输出结果为:
```
12
13
14
15
16
17
18
21
23
24
25
26
27
28
31
32
34
35
36
37
38
41
42
43
45
46
47
48
51
52
53
54
56
57
58
61
62
63
64
65
67
68
71
72
73
74
75
76
78
81
82
83
84
85
86
87
```
这里使用了一个 if 语句来保证个位和十位不相同。
利用Python编写程序,要求输出所有由1,2,3,4组成的素数,并且在每个素数中每个数字只出现一次,素数可以是一位数两位数三位数四位数。
为了实现这个需求,我们需要先定义一个函数检查一个数是否为素数,接着遍历所有由1、2、3、4组成的不同长度组合,并判断它们是否为素数。下面是相关的Python代码:
```python
def is_prime(n):
if n <= 1:
return False
if n == 2 or n == 3:
return True
if n % 2 == 0:
return False
i = 3
while i * i <= n:
if n % i == 0:
return False
i += 2
return True
def find_unique_digit_primes():
digits = [1, 2, 3, 4]
for length in range(1, 5): # 遍历1位到4位
for perm in itertools.permutations(digits, length): # 所有可能组合
num = int(''.join(str(digit) for digit in perm)) # 转换为数字
if is_prime(num):
print(num)
find_unique_digit_primes()
```
这段代码首先定义了一个`is_prime`函数用于判断一个数是否为素数。然后,在`find_unique_digit_primes`函数中,我们使用`itertools.permutations`生成所有可能的由1、2、3、4组成的数字,并检查它们是否为素数。
注意:由于素数的数量随着位数增加而迅速减少,特别是四位以上的数字几乎不可能是素数,所以这个程序可能会打印出大量的四位数。
阅读全文