对于以下 Python 脚本:
from sys import argv
script, input_encoding, error = argv
def main(language_file, encoding, errors):
line = language_file.readline()
if line:
print_line(line, encoding, errors)
return main(language_file, encoding, errors)
def print_line(line, encoding, errors):
next_lang = line.strip()
raw_bytes = next_lang.encode(encoding, errors=errors)
cooked_string = raw_bytes.decode(encoding, errors=errors)
print(raw_bytes, "<===>", cooked_string)
languages = open("languages.txt", encoding="utf-8")
main(languages, input_encoding, error)
查看main函数我不明白以下行:
print_line(line, encoding, errors)
为什么我们调用print_line函数并向其传递与参数名称完全相同的参数?
print_line()
当我尝试在不传递参数的情况下调用 print_line() 参数时,Python 正在输出:
print_line() 缺少 3 个必需的位置参数:“line”、“encoding”和“errors”
慕斯709654
蓝山帝景
守着一只汪
相关分类