输出是列,并希望它在一行中

时间:2016-05-27 14:36:50

标签: python-2.7

我从我编写的一些代码中得到了一列数字,我想连续列出它们。我没有从文件中得到这个。它是一个编码循环的输出。这是代码。

ast = [3,1]
fgh = list(itertools.product(ast, repeat=3))
hij = [",".join(map(str, item)) for item in fgh]

my_list = [3, 1, 3, 3, 1, 3, 3, 1, 3, 3, 1, 3, 1, 1, 1, 3, 3, 3, 3, 1, 1, 3, 1, 1]
n=3
gth =[",".join(str(number) for number in my_list[(i * n):(i * n + n)])
  for i in range(len(my_list) / n)]

for i in range(0, len(gth)-1):
for t in range(0, len(hij)-1):
  if gth[i] == hij[t]:
     print gth[i]

这是我打印gth [i]

时得到的结果
3,1,3
3,1,3
3,1,3
3,3,3
3,1,1

希望它看起来像这样。

['3,1,3', '3,1,3', '3,1,3', '3,3,3', '3,1,1'] 

我知道我昨晚提出了一个这样的问题,但我得到的每一个答案都认为它是一个DataFrame,或者来自一个文件,这是我的错,忘记提及类型。它的类型是一个字符串。但是当我尝试列出它时,我得到了它。

['3', ',', '1', ',', '3']
['3', ',', '1', ',', '3']
['3', ',', '1', ',', '3']
['3', ',', '1', ',', '3']
['3', ',', '3', ',', '3']
['3', ',', '1', ',', '1']

我在这里做错了什么?如果您需要我发布更多代码以帮助理解问题,请在下面发表评论,我只是不想让问题混乱。谢谢!

1 个答案:

答案 0 :(得分:1)

使用是列表:

import itertools

lst = []

ast = [3,1]
fgh = list(itertools.product(ast, repeat=3))
hij = [",".join(map(str, item)) for item in fgh]

my_list = [3, 1, 3, 3, 1, 3, 3, 1, 3, 3, 1, 3, 1, 1, 1, 3, 3, 3, 3, 1, 1, 3, 1, 1]
n=3
gth =[",".join(str(number) for number in my_list[(i * n):(i * n + n)])

for i in range(len(my_list) / n)]

for i in range(0, len(gth)-1):
    for t in range(0, len(hij)-1):
      if gth[i] == hij[t]:
         lst.append(gth[i])

输出:

>>> lst
['3,1,3', '3,1,3', '3,1,3', '3,1,3', '3,3,3', '3,1,1']