【发布时间】:2021-04-09 07:57:38
【问题描述】:
这是我在 Python 中返回大写字符串的代码:
import math
import os
import random
import re
import sys
def solve(s):
name = list(s.split())
for i in range(len(name)):
nparts = name[i].capitalize()
return print (nparts, end = " ")
if __name__ == '__main__':
fptr = open(os.environ['OUTPUT_PATH'], 'w')
s = input()
result = solve(s)
fptr.write(result + '\n')
fptr.close()
当我只运行函数时,结果是好的,但是当我尝试将结果写入文件时,我得到以下错误:
fptr.write(result + '\n')
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'
通过手动检查,我发现当我将结果存储到结果变量中时,它还会获得一个额外的值“无”。我不知道为什么会这样。请帮忙。
【问题讨论】:
-
solve(s)返回None。 -
另外,循环中带有return的循环只会运行一次,大约
return print(..):选择一个。 -
请在文件中分享一个示例输入和预期输出
-
您的代码中大约有 3 或 4 个错误,您真的应该给出示例输入和输出,或者只是解释您尝试做什么
标签: python python-3.x list