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

Python读取CSV取字段值输出带大括号 如何获取纯字符串

问题原因

你输出异常的核心是误用了Python的集合字面量语法:用{}包裹单个变量row[1]时,Python会自动创建仅包含该元素的集合对象,打印时就会输出{'Garfield'}这类集合格式的结果,而非你需要的纯字符串。

解决方案

csv.reader返回的每一行row本身就是字符串组成的列表,直接取下标对应的元素即可得到纯字符串,不需要额外包裹符号:

# 直接取对应下标的元素即可,本身就是字符串类型
surname = row[1]
# 打印验证
print(surname) # 输出 Garfield
# 传入构造函数直接传变量即可
your_instance = 你的构造函数(surname)

如果需要拼接firstname和surname使用,可采用以下两种写法:

# 写法1:f-string自定义拼接格式
full_name = f"{row[0]} {row[1]}"
# 写法2:沿用你已经验证过的join写法
full_name = " ".join(row)

错误写法说明

你原本不符合预期的写法本质是在操作集合而非字符串:

  • {row[1]}:等价于set([row[1]]),是集合对象,打印时会输出集合的标准格式
  • str({row[1]}):将整个集合对象转为字符串,自然保留了集合的大括号、引号等格式符号

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 04:06:05