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

Python中返回字符串为何变为长度为1的列表?

问题原因及解决方法

你的问题出在method()函数的返回语句上:

return[string1]

在Python中,方括号[]是定义列表的字面量语法,你把string1放在方括号里,相当于创建了一个仅包含该字符串的单元素列表,因此函数返回的是列表类型,而非你预期的字符串类型。

修正方法

去掉返回语句的方括号,直接返回字符串本身:

def method():
    string1 = "hallo1 \nhallo2"
    print("string1 :")
    print(type(string1))
    print(string1)
    return string1  # 移除方括号

string2=method()
print("string2 :")
print(type(string2))
print(string2)

修改后运行代码,string2的类型会变为str,输出内容和格式也会与string1完全一致,符合你的预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 13:34:52