Как мне сделать так, чтобы при печати списка Python в нем не было одинарных кавычек и скобок с каждым элементом при печати списка?

#python #python-3.x

#python #python-3.x

Вопрос:

Хорошо, итак, я кодировал Python, и когда я запускаю этот код

 names = ["Harry", " Ron", "Hermione"]
print(names)
# output: ['Harry', ' Ron', 'Hermione']
 

Как мне сделать так, чтобы в нем не было [] и ‘ ‘ .
Спасибо!

Комментарии:

1. можете ли вы уточнить в тексте, какой именно результат вы ищете? Ответ может быть таким же простым, как print(*names)

Ответ №1:

В зависимости от того, каким вы хотите видеть результат, вы можете использовать

 print(*names,sep=' ')
 

по умолчанию значение sep равно ‘ ‘. Если вы хотите напечатать все элементы в новой строке, передайте ‘n’ как sep.

Ответ №2:

 print(", ".join(names))
 

Ответ №3:

Если вы хотите сохранить разделитель запятой, на ум приходят два способа:

 print(*names,sep=",")
 

или

 print(','.join(names))
 

Ответ №4:

Это должно сделать это

 names = ["Harry", " Ron", "Hermione"]

for name in names:
    print(name, end=" ")
 

Комментарии:

1. после окончательного имени не будет новой строки. Если вы собираетесь это сделать, вам понадобится print() после цикла

Ответ №5:

 print(', '.join([n.strip() for n in names]))
 

или (спасибо @Ryan Haining)

 print(*[n.strip() for n in names]) 
 

Комментарии:

1. вам не нужно [] такое объединение внутри, оно генерирует дополнительный список. удалите их, и вы получите выражение генератора ', '.join(n.strip() for n in names)

2. думал, вы хотите убрать пробел перед «Ron» …. если вас это не волнует, тогда нет необходимости в strip() .