2017-01-26 12 views
0

私は少しPythonに慣れていて、別の機能の一部であれば複数の出力を並べて表示する方法が不思議でした。だから、簡単な例:私はこれを行う場合は2つ以上の関数の出力をPythonで並べて表示する

def function1(): 
    print("This is") 

def function2(): 
    print("a line") 

def main(): 
    function1() 
    function2() 

main() 

それは印刷になります。

This is 
a line 

しかし、どのように私はそれがこのようにプリントアウトして調整します:

This is a line 

編集:I気づいた.end関数はここで助けになるだろうが、もし私が項目の長いリストを持っていたら?このシナリオでは動作しないようです。

252 
245 
246 
234 

Bob 
Dylan 
Nick 
Ryan 

と私は2つはそう、それはのようになるに参加したかった:だから、例えば私の2つの出力があった場合にどのような

ジャスト機能印刷に使用
252 Bob 
245 Dylan 
246 Nick 
234 Ryan 

答えて

0

編集:私は気づいた.end関数はここに役立つだろうが、私は長いアイテムのリストを持っていた場合は?このシナリオでは動作しないようです。

おそらくこのようなものですか?私が見

def function1(): 
    print('Work It', end='') 
    yield 
    print('Do It', end='') 
    yield 
    print('Harder', end='') 
    yield 
    print('Faster', end='') 
    yield 


def function2(): 
    print('Make It', end='') 
    yield 
    print('Makes Us', end='') 
    yield 
    print('Better', end='') 
    yield 
    print('Stronger', end='') 
    yield 


def main(): 
    generator1, generator2 = function1(), function2() 

    while True: 
     try: 
      next(generator1) 
      print(' ', end='') 
      next(generator2) 
      print() 
     except StopIteration: 
      break 


if __name__ == '__main__': 
    main() 

出力

Work It Make It 
Do It Makes Us 
Harder Better 
Faster Stronger 
+0

これは機能します。ありがとうございました。 – DoeNd

0

終了= "" このような

def function1(): 
    print("This is", end=" ") 

def function2(): 
    print("a line", end="") 

def main(): 
    function1() 
    function2() 

main() 
+0

。しかし、各出力がアイテムの降順リストであれば、列を作成するようにそれらを保持したかったでしょうか? – DoeNd

+0

次に、まずデータを収集し、それをすべて印刷する別の機能に印刷を延期することを提案します。 – Moberg

関連する問題