Python基础训练100题(带答案)

如题所述

```html

Python基础训练100题精炼版


1. 素数检测: 用Python检查给定范围内的数字是否为素数



def is_prime(n):
if n <= 1:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
# 示例
print([is_prime(i) for i in range(20)])

2. 水仙花数: 寻找3位数的水仙花数



for num in range(100, 1000):
digits = [int(digit) for digit in str(num)]
if digits[0]**3 + digits[1]**3 + digits[2]**3 == num:
print(num)

3. 分解质因数: 输入一个数,分解其质因数



def prime_factors(n):
factors = []
d = 2
while d * d <= n:
if n % d:
d += 1
else:
n //= d
factors.append(d)
if n > 1:
factors.append(n)
return factors
n = int(input("Enter a number: "))
print(prime_factors(n))

4. 成绩等级转换: 根据分数计算学生成绩等级



def grade_converter(score):
if score < 60:
return 'F'
elif score < 80:
return 'C'
else:
return 'B'
score = float(input("Enter a score: "))
print(grade_converter(score))

5. 日期计算: 根据输入的年月日判断是否为闰年,并计算总天数



def is_leap_year(year):
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
return True
return False
year, month, day = map(int, input("Enter year, month, day: ").split())
days_in_month = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
total_days = sum(days_in_month[:month])
if is_leap_year(year) and month > 2:
total_days += 1
print(f"Total days: {total_days}")

6. 字符计数: 统计字符串中各个字符的出现次数



text = input("Enter a string: ")
char_counts = {char: text.count(char) for char in set(text)}
print(char_counts)

```
以上是经过精炼和优化后的文章,仅保留关键的代码段和题目描述,增强了可读性和内容质量。每个实例都有一个简短的标题和对应的代码示例,方便理解每个任务的目的。
温馨提示:答案为网友推荐,仅供参考
相似回答