簡體   English   中英

如何根據兩個變量的條件打印特定的 output

[英]How to print specific output based on condition from two variables

我有一個像這樣的 dataframe :

句子

我想要一個像這樣的 output :

名稱1:

任務1:

句子1

句子2

任務2:

句子3

名稱2:

任務1:

句子4

名稱3:

任務1:

句子5

任務2:

句子6

這是我到目前為止所做的:

for name in df.Name.unique():
    print(name + ' :\n')
    for mission in df.Mission.unique():
        print(mission + ' :\n')
        for index, value in df.Phrases[df.Mission == mission].items():
            print(value)
            print()
    for index, value in df.Phrases[df.Name == name].items():
        print(value)
        print()
       
    print('\n')

但是 output 並不完全是我得到的,我知道出了什么問題,但我不知道如何處理它:

名稱1:

任務1:

句子1

句子2

句子4

句子5

任務2:

句子3

句子6

句子1

句子2

句子3

名稱2:

任務1:

句子1

句子2

句子4

句子5

任務2:

句子3

句子6

句子4

名稱3:

任務1:

句子1

句子2

句子4

句子5

任務2:

句子3

句子6

句子5

句子6

您可以為自己的 dataframe 優化代碼,但邏輯是相同的:

我的 DataFrame:

在此處輸入圖像描述

代碼

for name in df.name.unique():
    print(name)
    for miss in df.mission.unique():
        print('  ' + miss)
        for sentence in df.sentences[(df.name == name) & (df.mission == miss)].tolist():
            print('    ' + sentence)

Output

name1
  mission1
    sentence1
    sentence2
  mission2
    sentence3
name2
  mission1
    sentence4
  mission2
name3
  mission1
    sentence5
  mission2
    sentence6

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM