您现在的位置:小学生自学网>> 信息>> python辅导

值得收藏的25个Python常用程序(附详细答案)

作者: 来源: 发布时间:2024年04月23日 点击数:
 

Python编程语言一直在飞速发展,成为了越来越多开发者的首选。如果你正在学习Python,那么今天我们有一个好消息,我们为你准备了25个值得收藏的Python练习题。

这些练习题适合不同水平的Python开发者,从初学者到专业开发者。这些题目将帮助你巩固Python编程的基础知识,提高编程能力,并为你的以后的项目提供帮助。

以下是25个值得收藏的Python练习题及详细答案:

1. 写一个程序,输出所有的奇数
```
for i in range(100):
if i % 2 != 0:
print(i)
```

2. 写一个程序,求1到100的和
```
sum = 0
for i in range(1, 101):
sum += i
print(sum)
```

3. 写一个程序,输出1到100中的所有质数
```
for i in range(2, 101):
for j in range(2, i):
if i % j == 0:
break
else:
print(i)
```

4. 写一个程序,输出斐波那契数列的前20项
```
a, b = 0, 1
for i in range(20):
a, b = b, a + b
print(a)
```

5. 写一个程序,判断一个数是否是回文数
```
def is_palindrome(num):
return str(num) == str(num)[::-1]
```

6. 写一个程序,判断一个字符串是否是回文字符串
```
def is_palindrome(str):
return str == str[::-1]
```

7. 写一个程序,生成一个随机数并将其逆序输出
```
import random
num = random.randint(1, 100)
print(str(num)[::-1])
```

8. 写一个程序,求两个数的最大公约数
```
def gcd(a, b):
while b != 0:
a, b = b, a % b
return a
```

9. 写一个程序,求两个数的最小公倍数
```
def lcm(a, b):
return a * b // gcd(a, b)
```

10. 写一个程序,输入两个整数,计算它们的和、差、积、商、余数
```
a, b = map(int, input().split())
print("和:", a + b)
print("差:", a - b)
print("积:", a * b)
print("商:", a // b)
print("余数:", a % b)
```

11. 写一个程序,判断一个数是否是完全数
```
def is_perfect(num):
factors = []
for i in range(1, num):
if num % i == 0:
factors.append(i)
return sum(factors) == num
```

12. 写一个程序,输出100以内的所有偶数,直到累加和大于1000
```
num = 0
for i in range(2, 100, 2):
num += i
if num > 1000:
break
print(i)
```

13. 写一个程序,计算一个字符串中有多少个单词
```
text = "Hello world! I am a Python developer."
words = text.split()
print(len(words))
```

14. 写一个程序,将两个列表合并成一个有序的列表
```
list1 = [1, 3, 5, 7]
list2 = [2, 4, 6, 8]
new_list = sorted(list1 + list2)
print(new_list)
```

15. 写一个程序,找出两个列表中的相同元素
```
list1 = [1, 3, 5, 7]
list2 = [2, 4, 6, 8, 1, 7]
common_elements = set(list1) & set(list2)
print(common_elements)
```

16. 写一个程序,找出两个列表中的不同元素
```
list1 = [1, 3, 5, 7]
list2 = [2, 4, 6, 8, 1, 7]
different_elements = set(list1) ^ set(list2)
print(different_elements)
```

17. 写一个程序,计算一个列表中每个元素的平方
```
list1 = [1, 3, 5, 7]
squares = [i**2 for i in list1]
print(squares)
```

18. 写一个程序,将一个字典中的键和值互换
```
dict1 = {'a': 1, 'b': 2, 'c': 3}
new_dict1 = {v: k for k, v in dict1.items()}
print(new_dict1)
```

19. 写一个程序,将一个列表中的元素去重
```
list1 = [1, 2, 3, 2, 1, 4, 5, 4]
new_list1 = list(set(list1))
print(new_list1)
```

20. 写一个程序,将一个列表中的元素按照大小重新排序
```
list1 = [1, 3, 5, 7, 2, 4, 6, 8]
new_list1 = sorted(list1)
print(new_list1)
```

21. 写一个程序,将一个字符串中的所有字母小写并去除空格
```
text = "Hello World! I Am A Python Developer."
new_text = text.lower().replace(" ", "")
print(new_text)
```

22. 写一个程序,将一个字符串中的所有字母大小写互换
```
text = "Hello World! I Am A Python Developer."
new_text = ""
for char in text:
if char.isupper():
new_text += char.lower()
elif char.islower():
new_text += char.upper()
else:
new_text += char
print(new_text)
```

23. 写一个程序,计算两个时间之间的差异(小时数和分钟数)
```
from datetime import datetime
time1 = datetime.strptime('2018-06-29 08:15:27', '%Y-%m-%d %H:%M:%S')
time2 = datetime.strptime('2018-06-29 15:35:16', '%Y-%m-%d %H:%M:%S')
diff = time2 - time1
print("小时数: ", diff.seconds // 3600)
print("分钟数: ", (diff.seconds // 60) % 60)
```

24. 写一个程序,将十六进制颜色代码转换为RGB值
```
def hex_to_rgb(hex):
r = int(hex[1:3], 16)
g = int(hex[3:5], 16)
b = int(hex[5:7], 16)
return (r, g, b)

print(hex_to_rgb('#FF0000'))
```

25. 写一个程序,计算一个数的阶乘
```
def factorial(num):
if num == 0:
return 1
else:
return num * factorial(num-1)

print(factorial(5))
```

以上是25个值得收藏的Python练习题及详细答案,希望这些题目能够帮助你巩固Python编程的基础知识,提高编程能力。

上一篇:python二维矩阵的输入与输出方法

下一篇:没有了!