繁体   English   中英

将打印在不同行上的输出转换为列表 python

[英]Convert output printed on different lines into list python

我一直对此感到困惑,似乎无法弄清楚。

我有一个大数据集并计算了一些浮点对象,当我打印它时,它在一个新行中打印每个输出(下面的示例数据子集):

print(x)
> 1.22
> 1.33
> 1.44

我想将这些值转换为字符串列表:

['1.22','1.33','1.44']

我尝试将浮动对象转换为字符串并遵循类似的建议here然后尝试使用 itertools 组合列表。

x_in_list = [y for y in (i.strip() for i in str(x).splitlines()) if y]
x_combined = itertools.chain(*x_in_list)

这给了我很多:

<itertools.chain object at 0x7ff6d00c2160>
<itertools.chain object at 0x7ff6e012f040>
<itertools.chain object at 0x7ff6d00c2250>

我认为这个问题与我在这里使用浮动对象的事实有关。 我知道我可能可以在我的原始循环中以更简单、更优雅的方式做到这一点,但现在我已经开始了,我真的很想弄清楚这一点。

似乎x是一个以\\n作为分隔符的字符串。 您可以使用字符串的split()方法根据该分隔符拆分x

你可以简单地做:

x_in_list = x.split()

默认情况下split()根据空格和换行符拆分字符串。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM