You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现姓名首字母大写时NoneType与str相加报错如何解决

首字母大写转换代码报错修复方案

错误原因

报错unsupported operand of +:'Nonetype' and 'str'的根因是你定义的solve函数没有显式返回值,Python中无return的函数默认返回None。你将None赋值给result后尝试和字符串'\n'拼接,自然触发类型不匹配错误。此外原代码未导入os模块,运行时还会触发name 'os' is not defined的报错。

修复后的完整代码

import os

def solve(s):
    c = str(s)
    if 0 < len(c) < 1000:
        # 把print改为return,将转换后的结果返回给调用方
        return c.title()
    # 边界情况返回原字符串,可根据需求调整
    return c

if __name__ == '__main__':
    fptr = open(os.environ['OUTPUT_PATH'], 'w')
    s = input()
    result = solve(s)
    fptr.write(result + '\n')
    fptr.close()

补充说明

Python内置的str.title()方法刚好匹配你的需求:会将字符串中每个单词的首字母转为大写,其余字母转为小写,输入adam grant时输出正好是Adam Grant。

内容的提问来源于stack exchange,提问作者Abburu Manish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.18 21:15:03