Должен ли я использовать пробелы или None в списке символов, которые должны быть объединены в Python?

Я пишу программу на Python, где я использую список, который представляет доску крестики-нолики.

Так как я спрашивал себя, должен ли я использовать "None" или одиночные пробелы для свободных пробелов, я написал эти две части кода:

   #code 1:     
   list1 = [None, 'X', 'O']
   print( '|'.join(value or ' ' for value in list1) )

   #code 2:
   list2 = [' ', 'X', 'O']
   print( '|'.join(list2) )

Я считаю, что list1 лучше и элегантнее в обращении, чем list2, но у него есть недостаток, заключающийся в том, что он (немного) менее удобен для печати.

Поэтому я пишу здесь, чтобы спросить, есть ли веская причина использовать второй код поверх первого.

Спасибо.

1 ответ

Решение

Первая форма поддерживает различие между значением пустой ячейки в вашем приложении - None и его представление - пустое пространство. Хотя это не имеет большого значения в тривиальной программе, это важно в больших приложениях. Поэтому используйте первую форму, чтобы сохранить хорошие привычки.

Другие вопросы по тегам