python中分数怎么输入_python分数序列求和

python中分数怎么输入_python分数序列求和在 Python 中 你可以使用 fractions 模块来进行分数计算 下面是一个简单的例子 展示了如何声明分数 进行分数的加减乘除以及比较分数 pythonfrom fractions import Fraction 声明分数 f1 Fraction 1 2 使用分数字符串初始化 f2 Fraction 0 5 使用小数初始化 f3 Fraction 1 2

在Python中,你可以使用`fractions`模块来进行分数计算。下面是一个简单的例子,展示了如何声明分数、进行分数的加减乘除以及比较分数:

python

from fractions import Fraction

声明分数

f1 = Fraction(1, 2) 使用分数字符串初始化

f2 = Fraction(0.5) 使用小数初始化

f3 = Fraction(1, 2) 使用两个整数初始化

分数加减

f4 = f1 + f2 f1 + f2

f5 = f1 - f2 f1 - f2

分数乘除

f6 = f1 * f2 f1 * f2

f7 = f1 / f2 f1 / f2

分数比较

print(f1 == f2) 比较f1和f2是否相等

print(f1 > f2) 比较f1是否大于f2

print(f1 < f2) 比较f1是否小于f2

输出结果将会是:

True

True

True

以上代码展示了如何使用`fractions`模块中的`Fraction`类来表示分数,并进行基本的分数运算。`Fraction`类的实例可以直接使用`+`、`-`、`*`、`/`运算符进行加减乘除操作。

如果你需要计算平均分、最高分、最低分、及格人数和及格率等统计数据,可以使用以下函数:

python

from fractions import Fraction

from sys import exit

def statistical(scorelist):

if scorelist == []:

return []

average_num = sum(scorelist) / len(scorelist)

max_num = max(scorelist)

min_num = min(scorelist)

pass_num = 0

for score in scorelist:

if score >= 60:

pass_num += 1

pass_rate = pass_num / len(scorelist)

return [average_num, max_num, min_num, pass_num, pass_rate]

scorelist = [] 初始化分数列表

wrong = 0 初始化错误次数

while True:

获取用户输入的分数列表

user_input = input("请输入分数列表,用逗号分隔(输入1继续,2结束):")

if user_input.lower() == '1':

continue

elif user_input.lower() == '2':

break

else:

print("输入错误,请重新输入。")

wrong += 1

if wrong >= 3:

print("错误次数过多,程序退出。")

exit()

try:

将输入的字符串转换为分数列表

scores = [Fraction(score.strip()) for score in user_input.split(',')]

stats = statistical(scores)

print("平均分:", stats)

print("最高分:", stats)

print("最低分:", stats)

print("及格人数:", stats)

print("及格率:", stats)

except ValueError:

print("输入包含非数字字符,请重新输入。")

这个函数会提示用户输入分数列表,然后计算并输出平均分、最高分、最低分、及格人数和及格率等统计数据。如果用户连续三次输入错误,程序将退出。

编程小号
上一篇 2026-05-05 23:16
下一篇 2026-05-05 23:12

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/46229.html