以下是几个常见的Python编程练习题及其答案解析:
1. 编写一个程序,将输入的字符串反转并输出。
def reverse_string(s):return s[::-1]input_str = input("请输入一个字符串:")
print("反转后的字符串是:", reverse_string(input_str))
解析:该程序定义了一个名为 reverse_string
的函数,它接受一个字符串参数 s
,并返回反转后的字符串。使用切片操作 [::-1]
可以方便地反转字符串。程序通过 input
函数获取用户输入的字符串,并调用函数将其反转后输出。
2. 编写一个程序,计算并输出1到100的和。
total = 0
for i in range(1, 101):total += i
print("1到100的和为:", total)
解析:该程序使用 for
循环遍历从1到100的整数,并将每个数累加到变量 total
中。最后,程序输出累加结果。
3. 编写一个程序,判断一个数是否为素数。
def is_prime(n):if n <= 1:return Falsefor i in range(2, int(n**0.5)+1):if n % i == 0:return Falsereturn Truenum = int(input("请输入一个正整数:"))
print(num, "是否为素数:", is_prime(num))
解析:该程序定义了一个名为 is_prime
的函数,用于判断一个数是否为素数。函数接受一个整数参数 n
,并返回一个布尔值。程序通过 input
函数获取用户输入的整数,并调用函数判断其是否为素数后输出结果。程序使用了数学原理,即一个合数必定可以分解成若干个因数之积,因此只需要检查从2到该数的平方根范围内是否存在因数即可判断该数是否为素数。
4. 编写一个程序,将输入的字符串中的元音字母替换成“*”,输出修改后的字符串。
def replace_vowels(s):vowels = 'aeiouAEIOU'for vowel in vowels:s = s.replace(vowel, '*')return sinput_str = input("请输入一个字符串:")
print("替换元音后的字符串是:", replace_vowels(input_str))
解析:该程序定义了一个名为 replace_vowels
的函数,它接受一个字符串参数 s
,并将字符串中的所有元音字母替换成“*”,然后返回修改后的字符串。程序通过 input
函数获取用户输入的字符串,并调用函数将其中的元音字母替换后输出。
5. 编写一个程序,计算并输出1到50的和
total = 0
for i in range(1, 51):total += i
print("1到50的和为:", total)
解析:该程序使用 for
循环遍历从1到50的整数,并将每个数累加到变量 total
中。最后,程序输出累加结果。
6. 编写一个程序,判断一个数是否为质数。
def is_prime(n):if n <= 1:return Falsefor i in range(2, int(n**0.5)+1):if n % i == 0:return Falsereturn Truenum = int(input("请输入一个正整数:"))
print(num, "是否为质数:", is_prime(num))
解析:该程序定义了一个名为 is_prime
的函数,用于判断一个数是否为质数。函数接受一个整数参数 n
,并返回一个布尔值。程序通过 input
函数获取用户输入的整数,并调用函数判断其是否为素数后输出结果。程序使用了数学原理,即一个合数必定可以分解成若干个因数之积,因此只需要检查从2到该数的平方根范围内是否存在因数即可判断该数是否为素数。
7. 编写一个程序,将输入的字符串中的所有字母转换为大写,并输出。
def to_uppercase(s):return s.upper()input_str = input("请输入一个字符串:")
print("转换为大写后的字符串是:", to_uppercase(input_str))
解析:该程序定义了一个名为 to_uppercase
的函数,它接受一个字符串参数 s
,并返回将字符串中的所有字母转换为大写后的结果。程序通过 input
函数获取用户输入的字符串,并调用函数将其转换为大写后输出。
8. 编写一个程序,计算并输出1到50的和。
total = 0
for i in range(1, 51):total += i
print("1到50的和为:", total)
解析:该程序使用 for
循环遍历从1到50的整数,并将每个数累加到变量 total
中。最后,程序输出累加结果。
9. 编写一个程序,判断一个数是否为质数。
def is_prime(n):if n <= 1:return Falsefor i in range(2, int(n**0.5)+1):if n % i == 0:return Falsereturn Truenum = int(input("请输入一个正整数:"))
print(num, "是否为质数:", is_prime(num))
解析:该程序定义了一个名为 is_prime
的函数,用于判断一个数是否为质数。函数接受一个整数参数 n
,并返回一个布尔值。程序通过 input
函数获取用户输入的整数,并调用函数判断其是否为素数后输出结果。程序使用了数学原理,即一个合数必定可以分解成若干个因数之积,因此只需要检查从2到该数的平方根范围内是否存在因数即可判断该数是否为素数。
10. 编写一个程序,读取一个文件中的内容并将其打印出来。
def read_file(filename):with open(filename, 'r') as file:content = file.read()print(content)filename = input("请输入文件名:")
read_file(filename)
解析:该程序定义了一个名为 read_file
的函数,它接受一个文件名参数,打开该文件并读取其内容,然后打印出来。程序通过 input
函数获取用户输入的文件名,并调用函数读取并打印该文件的内容。
11. 编写一个程序,将一个列表中的元素逆序排列,并输出结果。
def reverse_list(lst):lst.reverse()return lstinput_list = [1, 2, 3, 4, 5]
print("逆序排列后的列表是:", reverse_list(input_list))
解析:该程序定义了一个名为 reverse_list
的函数,它接受一个列表参数,使用内置函数 reverse()
将列表中的元素逆序排列,并返回修改后的列表。程序创建一个包含1到5的整数列表作为输入,并调用函数将其逆序排列后输出。
12. 编写一个程序,判断一个数是否为偶数。
def is_even(n):if n % 2 == 0:return Trueelse:return Falsenum = int(input("请输入一个整数:"))
print(num, "是否为偶数:", is_even(num))
解析:该程序定义了一个名为 is_even
的函数,用于判断一个数是否为偶数。函数接受一个整数参数 n
,并返回一个布尔值。程序通过 input
函数获取用户输入的整数,并调用函数判断其是否为偶数后输出结果。程序使用了取模运算符 %
来判断整数是否可以被2整除。