Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中,如何将浮点元组列表转换为字符串列表?_Python_List_Tuples - Fatal编程技术网

在Python中,如何将浮点元组列表转换为字符串列表?

在Python中,如何将浮点元组列表转换为字符串列表?,python,list,tuples,Python,List,Tuples,我有一个元组列表,如下所示- my_list = [(0, nan), (20.307, 0.14045), (-16.879, 0.09363), (4.598, 0.06323)] 此列表是- my_list = list(zip(list_a,list_b)) 其中,list_b是通过附加从一系列计算得出的方差而创建的,因此为nan 预期产量为- my_list = ['0, nan','20.307, 0.14045', '-16.879, 0.09363', '4.598, 0.0

我有一个元组列表,如下所示-

my_list = [(0, nan), (20.307, 0.14045), (-16.879, 0.09363), (4.598, 0.06323)]
此列表是-

my_list = list(zip(list_a,list_b))
其中,
list_b
是通过附加从一系列计算得出的方差而创建的,因此为
nan

预期产量为-

my_list = ['0, nan','20.307, 0.14045', '-16.879, 0.09363', '4.598, 0.06323']
我尝试循环查看
我的\u列表
,但我得到了错误-
名称错误:名称“nan”未定义

请导游。谢谢

这是python如何表示的
NaN

你可以这样做:

my_list = [(0, float("nan")), (20.307, 0.14045), (-16.879, 0.09363), (4.598, 0.06323)]

ret = [', '.join(str(i) for i in items) for items in my_list]
# ['0, nan', '20.307, 0.14045', '-16.879, 0.09363', '4.598, 0.06323']
或者,如果列表中始终只有两项,则可以使用f字符串:

ret = [f'{a}, {b}' for a, b in my_list]
你可以用这个
对于列表中的每个元组,添加一个由第一项和第二项组成的字符串

您的问题有些不清楚,但让我尽我所能回答。在任何情况下,您可能需要做的第一件事是:

from math import nan
允许使用
nan
literal。 如果要将
my_list
转换为字符串,可以使用一个单行程序:

my_list_strings = [", ".join(map(str, one_tuple)) for one_tuple in my_list]
或者,您希望
my_list
首先成为字符串列表吗?实现这一目标的一个方法是:

my_list = []
for single_str in zip(list_a, list_b):
    my_list.append(str(single_str[0]) + ", " + str(single_str[1]))

谢谢你的快速回复。问题是,我不能改变元组列表。因此,
float(“nan”)
是我不能真正做到的事情。那么元组列表是以什么形式出现的呢?作为字符串?(或者有人在代码中定义了
nan=float(“nan”)
somwe吗?)
nan
来自
my_series=pd.series(list_x)
my_list.append(my_series.var().round(5))
。此信息不完整。。。你为什么不问一个新问题,在哪里添加你真正想要解决的问题?从你的评论到其中一个答案-你的数据以列表的形式出现,然后你转换成pandas.Series,然后你计算var.provide full
my_list = []
for single_str in zip(list_a, list_b):
    my_list.append(str(single_str[0]) + ", " + str(single_str[1]))