Python "список порядка" - PullRequest
0 голосов
/ 16 мая 2011

У меня 2 проблемы с моими данными, может ли кто-нибудь мне помочь:

Как я могу получить от этого:

1.

k=[['1','7', 'U1'],
 ['1.5', '8', 'U1'],
 ['2', '5.5', 'U1']]

получить это

1,7,U1
1.5,8,U1
2,5.5,U1

РЕДАКТИРОВАТЬ 2 Я ВНОСЯ НЕКОТОРЫЕ ИЗМЕНЕНИЯ во втором случае: все еще ищу решение для этого:

2 А как получить, из этого

l=array([[[ 4.24231542], 'U1'],
       [[ 3.41424819], 'U1'],
       [[ 2.17214734], 'U1'],], dtype=object)

получить

4.24231542,U1
3.41424819,U1
2.17214734,U1

Спасибо

Ответы [ 8 ]

5 голосов
/ 16 мая 2011

Однострочный функциональный стиль:

print '\n'.join(','.join(x) for x in k)
4 голосов
/ 16 мая 2011

1)

for x in k:
    print(','.join(x))

2)

for x,y in l:
    print('%.8f,%s' % (x[0], y))
1 голос
/ 16 мая 2011

Вот одно решение, которое будет работать как для 1 , так и для 2 :

k = [['1', '7', 'U1'], ['1.5', '8', 'U1'], ['2', '5.5', 'U1']]
l = [[[4.2423154199999997], 'U1'], [[3.4142481899999999], 'U1'], [[2.17214734], 'U1']]

make_string = lambda x: ",".join(map(make_string, x)) if isinstance(x, list) else str(x)

print "\n".join(map(make_string, k))
print "\n".join(map(make_string, l))
1 голос
/ 16 мая 2011
for a in k: print ",".join (a)
1 голос
/ 16 мая 2011

Я рискну предположить, что вы на самом деле имеете в виду с точки зрения синтаксиса

Для первого:

k=[['1','7', 'U1'],
 ['1.5', '8', 'U1'],
 ['2', '5.5', 'U1']]

for l in k:
    print ', '.join(l)

Для второго:

for l in k:
    print l[0][0], l[1]

Надеюсь, это поможет

1 голос
/ 16 мая 2011
>>> print k
[['1', '7', 'U1'], ['1.5', '8', 'U1'], ['2', '5.5', 'U1']]
>>> for a, b, c in k:
...     print '%s,%s,%s' % (a, b, c)
...
1,7,U1
1.5,8,U1
2,5.5,U1

Теперь попробуй! (для второго)

1 голос
/ 16 мая 2011
for a,b,c in k: print "%s,%s,%s" % (a,b,c)

for a,b in l: print "%s,%s" % (a[0],b)
0 голосов
/ 17 мая 2011

Использование карты:

k = [['1','7', 'U1'], ['1.5', '8', 'U1'], ['2', '5.5', 'U1']]

map(','.join, k) # returns ['1,7,U1', '1.5,8,U1', '2,5.5,U1']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...