Heim  >  Artikel  >  Backend-Entwicklung  >  Wie ändere ich Python-Daten von vertikal auf horizontal?

Wie ändere ich Python-Daten von vertikal auf horizontal?

little bottle
little bottleOriginal
2019-05-22 09:31:5619072Durchsuche

So ändern Sie Python-Daten von vertikal in horizontal: Verwenden Sie die Funktion zip(), ähnlich dem Prozess der Matrixtransposition, um vertikale Daten in horizontale Daten umzuwandeln; die Syntax „zip([iterable, ...“ ] )". Diese Funktion packt die entsprechenden Elemente im Objekt in Tupel und gibt dann eine Liste aus diesen Tupeln zurück.

Wie ändere ich Python-Daten von vertikal auf horizontal?

Python ist mittlerweile eine sehr beliebte Sprache. Viele Menschen in allen Lebensbereichen lernen Python, aber die Schwierigkeiten beim Lernprozess sind nicht die gleichen. wenige. Ich werde zum Beispiel darüber sprechen, wie man die Daten von vertikal in horizontal ändert.

Erste Methode:

Horizontale Daten:

def func(*kargs):
  
    return kargs,        //有“,”
l = func(5,3,4,5,6)
for i in l:
    
    print (i)

Ausgabe für:

(5, 3, 4, 5, 6)

Wenn Sie die Python-Daten von vertikal in horizontal ändern möchten, müssen Sie

verwenden, um zu vertikalen Daten zu wechseln:

Die Ausgabe von
def func(*kargs):
  
    return kargs        //无“,”
l = func(5,3,4,5,6)
for i in l:
    
    print (i)

ist:

5
3
4
5
6

Dies liegt daran, dass return kargs die eingehenden Parameter zurückgibt, bei denen es sich um Tupel (5, 3, 4, 5, 6) handelt, sodass die Traversal-Ausgabe vertikal ist und return kargs die Eingehende Parameter werden tatsächlich in ein Tupel gepackt und in der Form (kargs,) zurückgegeben, in diesem Fall ((5, 3, 4, 5, 6),), da das Traversierungsobjekt nur ein Tupelobjekt enthält (5, 3, 4, 5, 6) sodass nur print((5, 3, 4, 5, 6)) tatsächlich ausgeführt wird.

Die zweite Methode:

1, Python3.2

# -*- coding: utf-8 -*-
def vertical_print(s):
lines=s.strip('。').split(',')
lines.reverse()
print('\n'.join([' '.join(w) for w in zip(*lines)]))
vertical_print("白日依山尽,黄河入海流,欲穷千里目,更上一层楼。")

2, Python 2.5

# -*- coding: utf-8 -*-
def vertical_print(s):
lines=s.strip('。'.decode('utf8')).split(','.decode('utf8'))
lines.reverse()
print '\n'.join([' '.join(w) for w in zip(*lines)])
s="白日依山尽,黄河入海流,欲穷千里目,更上一层楼。".decode('utf8')
vertical_print(s)

zip() Die Funktion von zip () ist die Kombination mehrerer eingehender Iterables.

Zum Beispiel erhält list(zip("abc","def","ghi")) [('a', 'd', 'g'), ('b', 'e ' , 'h'), ('c', 'f', 'i')]. Hier wird aus zip(*lines) ein Tupel von Zeichen gewonnen, die für jede Zeile ausgegeben werden sollen.

Im Wesentlichen handelt es sich bei diesem Programm um einen Prozess ähnlich der Matrixtransposition, und der Kern ist der Aufruf der Funktion zip().

Um Python zu lernen, müssen Sie die Verwendung von Python-Ideen üben. Nur wenn Sie versuchen, sich nicht durch C-Ideen einschränken zu lassen, können Sie Python gut schreiben.

Das obige ist der detaillierte Inhalt vonWie ändere ich Python-Daten von vertikal auf horizontal?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn