首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >String联接将True视为布尔值而不是字符串

String联接将True视为布尔值而不是字符串
EN

Stack Overflow用户
提问于 2019-03-26 11:03:08
回答 2查看 703关注 0票数 5

我正在编写代码,从CSV文件读取数据到熊猫数据,并获得唯一的值,并将它们作为字符串连接起来。问题是其中一个列包含值TrueFalse。因此,在连接值的同时,我得到了错误

序列项目0:预期的str实例,bool找到

我希望python将True视为字符串而不是布尔值。

我试过许多选择,但都没有用。

完整的代码和回溯附在下面。

代码语言:javascript
复制
import pandas as pd
df=pd.read_csv('C:/Users/jaiveeru/Downloads/run_test1.csv')
cols=df.columns.tolist()
for i in cols:
    lst=df[i].unique().tolist()
    str1 = ','.join(lst)
    lst2=[str1]

-5 str1 = ','.join(lst) TypeError:序列项0:预期的str实例,bool找到

lst2应该有值['True,False']

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-03-26 11:05:49

Python 3不预置隐式强制转换。您需要显式地将布尔值转换为字符串。

这可以通过 builtin function轻松地完成,它对可迭代的每个项应用一个函数,并返回结果:

代码语言:javascript
复制
str1 = ','.join(map(str, lst))
票数 5
EN

Stack Overflow用户

发布于 2019-03-26 11:06:34

使用.astype(str)

Ex:

代码语言:javascript
复制
df[i].unique().astype(str).tolist()
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55355567

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档