调用一个Python函数,该函数期望键盘输入来自文本文件的数据

2024-05-08 03:51:35 发布

您现在位置:Python中文网/ 问答频道 /正文

使用C/C++类比,我想把文件的内容管到STDIN。你知道吗

我有一个Python函数,它提示用户输入学生姓名和年级,并创建一个列表列表。我不想输入100个姓名和成绩,而是将姓名和成绩放在一个文本文件中,并将其作为该函数的输入。我该怎么做?代码片段如下:

def enter_grades(num_students):
    class_grades = []
    for i in range(num_students):
       class_grades.append([input(), float(input())])
    print( class_grades)
    return class_grades

“有一个文件”成绩.txt“学生的名字和成绩。希望提供其内容作为输入以输入\u grades()。你知道吗


Tags: 文件函数用户内容列表inputstdin学生
1条回答
网友
1楼 · 发布于 2024-05-08 03:51:35

您正在查找freopen()的python版本。你知道吗

只需执行以下操作即可将sys.stdin设置为文件对象:

import sys

sys.stdin = open("/path/to/file.txt", "r")
text = input()
print(text)

input()函数现在将从文件中读取数据,而不是用户输入。你知道吗

更多用法

类似地,如果要将标准输出或标准错误重定向到文件,只需在sys中设置相应的变量:

sys.stdout = open("stdout.txt", "w")
sys.stderr = open("stderr.txt", "w")

相关问题 更多 >