簡體   English   中英

如何在沒有方括號的情況下打印

[英]How do I print without square brackets

所以我在這里得到了這個函數,它應該做的是創建一個我可以寫入的文件。第二個和第三個參數是列表,而第一個只是我要創建的文件名來寫入。在函數中,我做了一個 for 循環,我循環遍歷all_students_list ,它是一個列表,但在每個索引處,也是一個列表,列表中有名字和姓氏。 all_courses_list是學校所有課程的列表, Schedule是另一個函數返回的列表,給我們學生的時間表。 然后我將學生姓名和時間表一起添加到文件中。 問題是它還打印[]方括號。 我怎樣才能擺脫它? 我已經嘗試過

.replace('[', '')
.replace(']', '')

但它不起作用。

這是我的代碼。

def generate_student_schedules(filename, all_courses_list, all_students_list):
    with open(filename,'w') as fileout:
    
        for one_student in all_students_list:
            schedule = get_schedule(all_courses_list)
            one_line = ''
            one_line += (f'{one_student}')
            one_line += (f'{schedule}\n')
            fileout.write(one_line)

如果one_student是一個實際列表,那么你可以使用" ".join(one_student) ,所以總的來說:

def generate_student_schedules(filename, all_courses_list, all_students_list):
    with open(filename,'w') as fileout:
    
        for one_student in all_students_list:
            schedule = get_schedule(all_courses_list)
            one_line = ''
            one_line += (" ".join(one_student))
            one_line += (f'{schedule}\n')
            fileout.write(one_line)

打印列表時,Python 的默認設置是打印列表中的括號和項目。 您必須構建列表組件的單個字符串並打印該單個字符串。 如果它們都是字符串,您的格式字符串可以提取單個項目或在所有項目中使用join

>>> student = ['John','Smith']
>>> schedule = ['Class1','Class2']
>>> print(student,schedule)
['John', 'Smith'] ['Class1', 'Class2']
>>> line = f'{student[1]}, {student[0]}: {", ".join(schedule)}'
>>> print(line)
Smith, John: Class1, Class2

暫無
暫無

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

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