30道Python基础练习题

在这里插入图片描述
大家好,我是程序媛学姐,今天为大家梳理了30道Python基础练习题,方便大家学习参考。

本文目录


1. 编写一个程序,输出"Hello, World!"

这个程序的目标是简单地输出一条消息,即"Hello, World!"。在Python中,可以使用print语句来实现这个功能。

示例代码:

# 输出"Hello, World!"
print("Hello, World!")

在上面的示例代码中,print("Hello, World!")语句将字符串"Hello, World!“输出到屏幕上。运行这段代码将在控制台或终端中显示"Hello, World!”。


2. 编写一个程序,计算并输出2和3的和

这个程序使用了简单的加法运算符(+)来计算2和3的和,并将结果保存在变量result中。

# 计算2和3的和
sum_result = 2 + 3
# 输出结果
print("2 + 3 =", sum_result)

在这段代码中,2 + 3表示对2和3进行加法运算,结果为5,赋值给变量sum_result。


3. 编写一个程序,从用户输入中获取两个数字,并计算它们的乘积

示例代码:

# 获取用户输入的两个数字
num1 = float(input("请输入第一个数字: "))
num2 = float(input("请输入第二个数字: "))

# 计算并输出两个数字的乘积
product = num1 * num2
print(f"{num1} * {num2} = {product}")

解析:使用input()函数获取用户输入的两个数字并转换为浮点数类型,然后通过乘法运算符*计算它们的乘积,并使用print()函数输出计算结果。


4. 编写一个程序,接受用户输入的半径,并计算圆的面积和周长

示例代码:

import math

# 获取用户输入的半径
radius = float(input("请输入圆的半径: "))

# 计算圆的面积和周长
area = math.pi * radius**2
circumference = 2 * math.pi * radius

# 输出计算结果
print(f"圆的面积为: {area:.2f}")
print(f"圆的周长为: {circumference:.2f}")

代码解析:程序首先导入math模块以使用数学函数,然后使用input()函数获取用户输入的半径,并将其转换为浮点数类型。接着,利用数学公式计算圆的面积和周长,并使用print()函数输出结果。


5. 编写一个程序,检查用户输入的数字是否为偶数

示例代码:

# 获取用户输入的数字
number = int(input("请输入一个数字: "))

# 判断数字是否为偶数
if number % 2 == 0:
    print(f"{number} 是偶数。")
else:
    print(f"{number} 不是偶数。")

代码解析:程序首先使用input()函数获取用户输入的数字,并将其转换为整数类型。然后,通过判断数字除以2的余数是否等于0来确定数字是否为偶数,若余数为0则输出该数字是偶数,否则输出该数字不是偶数。


6. 编写一个程序,接受用户输入的两个字符串,并将它们合并成一个新的字符串输出

示例代码:

# 获取用户输入的两个字符串
str1 = input("请输入第一个字符串: ")
str2 = input("请输入第二个字符串: ")

# 合并两个字符串并输出
merged_str = str1 + str2
print("合并后的字符串:", merged_str)

代码解析:程序使用input()函数获取用户输入的两个字符串,并分别存储在变量str1str2中。然后,通过字符串拼接运算符+将两个字符串合并成一个新的字符串,并使用print()函数输出合并后的结果。


7. 编写一个程序,接受用户输入的字符串,并输出字符串的长度

示例代码:

# 获取用户输入的字符串
user_input = input("请输入一个字符串: ")

# 计算并输出字符串的长度
length = len(user_input)
print(f"输入的字符串长度为: {length}")

代码解析:程序使用input()函数获取用户输入的字符串,并将其存储在变量user_input中。然后,通过内置函数len()计算字符串的长度,并使用print()函数输出长度信息。


8. 编写一个程序,接受用户输入的年份,并判断该年份是否为闰年

示例代码:

# 获取用户输入的年份
year = int(input("请输入一个年份: "))

# 判断是否为闰年
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    print(f"{year} 年是闰年。")
else:
    print(f"{year} 年不是闰年。")

代码解析:程序使用input()函数获取用户输入的年份,并将其转换为整数类型。然后,通过闰年的判断条件进行判断:能被4整除但不能被100整除,或者能被400整除的年份为闰年。根据判断结果,使用print()函数输出对应的判断信息。


9. 编写一个程序,从列表中移除所有重复的元素,并输出去重后的列表

示例代码:

# 定义一个包含重复元素的列表
original_list = [1, 2, 3, 4, 2, 3, 5, 6, 1]

# 使用集合去重,并转换为列表输出
unique_list = list(set(original_list))

# 输出去重后的列表
print("去重后的列表:", unique_list)

代码解析:程序首先定义了一个包含重复元素的列表original_list。然后,使用集合set的特性去除列表中的重复元素,并将去重后的集合转换为列表list,存储在变量unique_list中。最后,使用print()函数输出去重后的列表。


10. 编写一个程序,将一个列表反转,并输出反转后的列表

示例代码:

# 定义一个列表
my_list = [1, 2, 3, 4, 5]

# 使用列表的reverse方法反转列表
my_list.reverse()

# 输出反转后的列表
print("反转后的列表:", my_list)

代码解析:程序首先定义了一个列表my_list。然后,使用列表的reverse()方法对列表进行反转操作。最后,使用print()函数输出反转后的列表。


11. 编写一个程序,接受用户输入的数字列表,并计算列表中所有数字的和

示例代码:

# 获取用户输入的数字列表
num_list = input("请输入数字列表,各数字之间用空格分隔: ").split()

# 将输入的字符串转换为整数列表
num_list = [int(num) for num in num_list]

# 计算列表中所有数字的和
total = sum(num_list)

# 输出计算结果
print(f"列表中所有数字的和为: {total}")

代码解析:程序使用input()函数获取用户输入的数字列表,并通过split()方法将输入的字符串按空格分隔成多个字符串。然后,使用列表推导式将这些字符串转换为整数类型,存储在变量num_list中。接着,使用sum()函数计算列表中所有数字的和,并使用print()函数输出计算结果。


12. 编写一个程序,接受用户输入的数字列表,并输出列表中最大和最小的数字

示例代码:

# 获取用户输入的数字列表
num_list = input("请输入数字列表,各数字之间用空格分隔: ").split()

# 将输入的字符串转换为整数列表
num_list = [int(num) for num in num_list]

# 输出列表中最大和最小的数字
max_num = max(num_list)
min_num = min(num_list)

# 输出计算结果
print(f"列表中最大的数字为: {max_num}")
print(f"列表中最小的数字为: {min_num}")

代码解析:程序使用input()函数获取用户输入的数字列表,并通过split()方法将输入的字符串按空格分隔成多个字符串。然后,使用列表推导式将这些字符串转换为整数类型,存储在变量num_list中。接着,使用max()函数和min()函数分别计算列表中最大和最小的数字,并使用print()函数输出计算结果。


13. 编写一个程序,接受用户输入的数字列表,并将列表中所有数字按升序排列后输出

示例代码:

# 获取用户输入的数字列表
num_list = input("请输入数字列表,各数字之间用空格分隔: ").split()

# 将输入的字符串转换为整数列表
num_list = [int(num) for num in num_list]

# 对列表进行升序排序
sorted_list = sorted(num_list)

# 输出排序后的列表
print("升序排列后的列表:", sorted_list)

代码解析:程序使用input()函数获取用户输入的数字列表,并通过split()方法将输入的字符串按空格分隔成多个字符串。然后,使用列表推导式将这些字符串转换为整数类型,存储在变量num_list中。接着,使用sorted()函数对列表进行升序排序,并将排序后的结果存储在变量sorted_list中。最后,使用print()函数输出排序后的列表。


14. 编写一个程序,接受用户输入的数字列表,并将列表中所有数字按降序排列后输出

示例代码:

# 获取用户输入的数字列表
num_list = input("请输入数字列表,各数字之间用空格分隔: ").split()

# 将输入的字符串转换为整数列表
num_list = [int(num) for num in num_list]

# 对列表进行降序排序
sorted_list = sorted(num_list, reverse=True)

# 输出排序后的列表
print("降序排列后的列表:", sorted_list)

代码解析:程序使用input()函数获取用户输入的数字列表,并通过split()方法将输入的字符串按空格分隔成多个字符串。然后,使用列表推导式将这些字符串转换为整数类型,存储在变量num_list中。接着,使用sorted()函数对列表进行降序排序(通过设置reverse=True参数),并将排序后的结果存储在变量sorted_list中。最后,使用print()函数输出排序后的列表。


15. 编写一个程序,接受用户输入的字符串,并判断该字符串是否为回文字符串

示例代码:

# 获取用户输入的字符串
input_str = input("请输入一个字符串: ")

# 判断字符串是否为回文字符串
if input_str == input_str[::-1]:
    print("是回文字符串。")
else:
    print("不是回文字符串。")

代码解析:程序使用input()函数获取用户输入的字符串,并将其存储在变量input_str中。然后,通过切片操作[::-1]将字符串反转,与原始字符串进行比较,若相等则说明是回文字符串,否则不是。最后,使用print()函数输出判断结果。


16. 编写一个程序,接受用户输入的字符串,并统计字符串中各个字母出现的次数

示例代码:

# 获取用户输入的字符串
input_str = input("请输入一个字符串: ")

# 初始化字母计数的字典
letter_count = {}

# 统计字符串中各个字母出现的次数
for letter in input_str:
    if letter.isalpha():
        letter_count[letter] = letter_count.get(letter, 0) + 1

# 输出字母计数结果
print("各个字母出现的次数:")
for letter, count in letter_count.items():
    print(f"{letter}: {count}")

代码解析:程序首先使用input()函数获取用户输入的字符串,并将其存储在变量input_str中。然后,初始化一个空字典letter_count用于存储各个字母出现的次数。接着,使用for循环遍历字符串中的每个字符,对于每个字母字符,使用isalpha()方法判断是否为字母,然后使用get()方法统计字母出现的次数并更新到字典中。最后,使用print()函数输出统计结果。


17. 编写一个程序,接受用户输入的字符串,并将字符串中的大写字母转换为小写字母

示例代码:

# 获取用户输入的字符串
input_str = input("请输入一个字符串: ")

# 将大写字母转换为小写字母
lowercase_str = input_str.lower()

# 输出转换后的字符串
print("转换后的字符串:", lowercase_str)

代码解析:程序使用input()函数获取用户输入的字符串,并将其存储在变量input_str中。然后,使用字符串的lower()方法将字符串中的大写字母转换为小写字母,存储在变量lowercase_str中。最后,使用print()函数输出转换后的字符串。


18. 编写一个程序,接受用户输入的字符串,并判断该字符串是否为全数字字符串

示例代码:

# 获取用户输入的字符串
input_str = input("请输入一个字符串: ")

# 判断字符串是否为全数字字符串
if input_str.isdigit():
    print("是全数字字符串。")
else:
    print("不是全数字字符串。")

代码解析:程序使用input()函数获取用户输入的字符串,并将其存储在变量input_str中。然后,使用字符串的isdigit()方法判断字符串是否全由数字组成,若是则输出是全数字字符串,否则输出不是全数字字符串。最后,使用print()函数输出判断结果。


19. 编写一个程序,接受用户输入的字符串,并输出字符串中每个单词的首字母大写形式

示例代码:

# 获取用户输入的字符串
input_str = input("请输入一个字符串: ")

# 将字符串按空格分割成单词列表,并对每个单词进行首字母大写处理
words_list = [word.capitalize() for word in input_str.split()]

# 将处理后的单词列表组合成字符串并输出
capitalized_str = " ".join(words_list)
print("每个单词的首字母大写形式:", capitalized_str)

代码解析:程序首先使用input()函数获取用户输入的字符串,并将其存储在变量input_str中。然后,使用字符串的split()方法按空格将字符串分割成单词列表,并利用列表推导式和字符串的capitalize()方法对每个单词进行首字母大写处理,生成处理后的单词列表words_list。接着,使用字符串的join()方法将处理后的单词列表组合成字符串,并输出。


20. 编写一个程序,接受用户输入的两个数字,并交换它们的值后输出

示例代码:

# 获取用户输入的两个数字
num1 = float(input("请输入第一个数字: "))
num2 = float(input("请输入第二个数字: "))

# 交换两个数字的值
num1, num2 = num2, num1

# 输出交换后的值
print(f"交换后的第一个数字为: {num1}")
print(f"交换后的第二个数字为: {num2}")

代码解析:程序使用input()函数分别获取用户输入的两个数字,并将它们转换为浮点数类型,存储在变量num1num2中。然后,利用Python的多变量赋值特性,通过num1, num2 = num2, num1语句交换两个数字的值。最后,使用print()函数输出交换后的两个数字。


21. 编写一个程序,接受用户输入的字符串,并将字符串中的空格替换为指定的字符

示例代码:

# 获取用户输入的字符串和指定的替换字符
input_str = input("请输入一个字符串: ")
replace_char = input("请输入要替换空格的字符: ")

# 将字符串中的空格替换为指定的字符
new_str = input_str.replace(" ", replace_char)

# 输出替换后的字符串
print("替换后的字符串:", new_str)

代码解析:程序使用input()函数分别获取用户输入的字符串和指定的替换字符,并将它们存储在变量input_strreplace_char中。然后,使用字符串的replace()方法将字符串中的空格替换为指定的字符,得到替换后的新字符串new_str。最后,使用print()函数输出替换后的字符串。


22. 编写一个程序,接受用户输入的数字,并判断该数字是否为质数

示例代码:

# 获取用户输入的数字
num = int(input("请输入一个数字: "))

# 判断数字是否为质数
is_prime = True
if num <= 1:
    is_prime = False
else:
    for i in range(2, int(num**0.5) + 1):
        if num % i == 0:
            is_prime = False
            break

# 输出判断结果
if is_prime:
    print(f"{num} 是质数。")
else:
    print(f"{num} 不是质数。")

代码解析:程序使用input()函数获取用户输入的数字,并将其转换为整数类型,存储在变量num中。然后,通过循环判断该数字是否为质数,若数字小于等于1,则不是质数;否则,从2到该数字的平方根范围内进行遍历,如果存在能整除该数字的因子,则该数字不是质数。最后,根据判断结果使用print()函数输出相应的信息。


23. 编写一个程序,接受用户输入的字符串,并检查字符串中是否包含特定的子字符串

示例代码:

# 获取用户输入的字符串和要检查的子字符串
input_str = input("请输入一个字符串: ")
sub_str = input("请输入要检查的子字符串: ")

# 检查字符串中是否包含特定的子字符串
if sub_str in input_str:
    print(f"字符串中包含子字符串 '{sub_str}'。")
else:
    print(f"字符串中不包含子字符串 '{sub_str}'。")

代码解析:程序使用input()函数分别获取用户输入的字符串和要检查的子字符串,并将它们存储在变量input_strsub_str中。然后,通过in运算符检查字符串中是否包含特定的子字符串,若包含则输出包含的信息,否则输出不包含的信息。


24. 编写一个程序,接受用户输入的两个列表,并将它们合并为一个新的列表后输出

示例代码:

# 获取用户输入的两个列表
list1 = input("请输入第一个列表,各元素之间用空格分隔: ").split()
list2 = input("请输入第二个列表,各元素之间用空格分隔: ").split()

# 将输入的字符串列表转换为整数列表
list1 = [int(num) for num in list1]
list2 = [int(num) for num in list2]

# 合并两个列表为一个新列表
merged_list = list1 + list2

# 输出合并后的列表
print("合并后的列表:", merged_list)

代码解析:程序首先使用input()函数分别获取用户输入的两个列表,并通过split()方法将输入的字符串按空格分隔成多个字符串。然后,使用列表推导式将这些字符串转换为整数类型,分别存储在变量list1list2中。接着,通过+运算符将两个列表合并为一个新的列表merged_list。最后,使用print()函数输出合并后的列表。


25. 编写一个程序,接受用户输入的字符串,并输出字符串中每个字符的ASCII码值

示例代码:

# 获取用户输入的字符串
input_str = input("请输入一个字符串: ")

# 输出字符串中每个字符的ASCII码值
ascii_values = [ord(char) for char in input_str]
print("字符串中每个字符的ASCII码值:", ascii_values)

代码解析:程序使用input()函数获取用户输入的字符串,并将其存储在变量input_str中。然后,使用列表推导式和ord()函数将字符串中每个字符转换为其对应的ASCII码值,并将这些ASCII码值存储在列表ascii_values中。最后,使用print()函数输出字符串中每个字符的ASCII码值。


26. 编写一个程序,接受用户输入的两个整数,并计算它们的最大公约数和最小公倍数

示例代码:

# 获取用户输入的两个整数
num1 = int(input("请输入第一个整数: "))
num2 = int(input("请输入第二个整数: "))

# 计算最大公约数
def gcd(a, b):
    while b:
        a, b = b, a % b
    return a

# 计算最小公倍数
def lcm(a, b):
    return abs(a * b) // gcd(a, b)

# 输出计算结果
print(f"最大公约数为: {gcd(num1, num2)}")
print(f"最小公倍数为: {lcm(num1, num2)}")

代码解析:程序首先使用input()函数获取用户输入的两个整数,并将其转换为整数类型,存储在变量num1num2中。然后,定义了计算最大公约数的函数gcd和计算最小公倍数的函数lcm。最大公约数的计算使用辗转相除法,而最小公倍数的计算则是通过调用最大公约数函数来实现的。最后,使用print()函数输出计算结果。


27. 编写一个程序,接受用户输入的列表和一个元素,然后判断该元素是否在列表中

示例代码:

# 获取用户输入的两个整数
num1 = int(input("请输入第一个整数: "))
num2 = int(input("请输入第二个整数: "))

# 计算最大公约数
def gcd(a, b):
    while b:
        a, b = b, a % b
    return a

# 计算最小公倍数
def lcm(a, b):
    return abs(a * b) // gcd(a, b)

# 输出计算结果
print(f"最大公约数为: {gcd(num1, num2)}")
print(f"最小公倍数为: {lcm(num1, num2)}")

代码解析:程序首先使用input()函数获取用户输入的两个整数,并将其转换为整数类型,存储在变量num1num2中。然后,定义了计算最大公约数的函数gcd和计算最小公倍数的函数lcm。最大公约数的计算使用辗转相除法,而最小公倍数的计算则是通过调用最大公约数函数来实现的。最后,使用print()函数输出计算结果。


28. 编写一个程序,接受用户输入的两个字符串,并检查它们是否为异位词(字符相同但排列顺序不同)

示例代码:

# 获取用户输入的两个字符串
str1 = input("请输入第一个字符串: ")
str2 = input("请输入第二个字符串: ")

# 判断是否为异位词
def is_anagram(str1, str2):
    return sorted(str1) == sorted(str2)

# 输出判断结果
if is_anagram(str1, str2):
    print("是异位词。")
else:
    print("不是异位词。")

代码解析:程序使用input()函数分别获取用户输入的两个字符串,并将它们存储在变量str1str2中。然后,定义了判断是否为异位词的函数is_anagram,该函数通过对两个字符串进行排序后比较来判断是否为异位词。最后,根据判断结果使用print()函数输出相应的信息。


29. 编写一个程序,接受用户输入的字符串和索引值,然后输出字符串中对应索引位置的字符

示例代码:

# 获取用户输入的字符串和索引值
input_str = input("请输入一个字符串: ")
index = int(input("请输入要获取字符的索引值: "))

# 获取字符串中对应索引位置的字符
if index >= 0 and index < len(input_str):
    char_at_index = input_str[index]
    print(f"字符串中索引为 {index} 的字符为: {char_at_index}")
else:
    print("索引值超出范围,请输入有效的索引值。")

代码解析:程序首先使用input()函数分别获取用户输入的字符串和索引值,并将它们分别存储在变量input_strindex中。然后,通过判断索引值是否在字符串范围内,使用索引操作获取字符串中对应索引位置的字符,并将结果输出。如果索引值超出范围,则输出提示信息。


30. 编写一个程序,接受用户输入的数字列表,并检查列表中的数字是否按照等差数列排列

示例代码:

# 获取用户输入的数字列表
num_list = input("请输入数字列表,各数字之间用空格分隔: ").split()

# 将输入的字符串列表转换为整数列表
num_list = [int(num) for num in num_list]

# 判断数字列表是否为等差数列
def is_arithmetic_sequence(nums):
    if len(nums) <= 1:
        return True
    diff = nums[1] - nums[0]
    for i in range(2, len(nums)):
        if nums[i] - nums[i - 1] != diff:
            return False
    return True

# 输出判断结果
if is_arithmetic_sequence(num_list):
    print("数字列表是等差数列。")
else:
    print("数字列表不是等差数列。")

代码解析:程序首先使用input()函数获取用户输入的数字列表,并通过split()方法将输入的字符串按空格分隔成多个字符串。然后,使用列表推导式将这些字符串转换为整数类型,存储在变量num_list中。接着,定义了判断数字列表是否为等差数列的函数is_arithmetic_sequence,该函数通过计算列表中相邻元素的差值是否相等来判断是否为等差数列。最后,根据判断结果使用print()函数输出相应的信息。


今天的分享到这里就结束了,希望可以帮到你~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值