.starts с использованием нескольких переменных - PullRequest
0 голосов
/ 24 октября 2019

Я делаю проект для школы, где я делаю систему управления кинотеатром, но я немного устала от записи / чтения текстовых файлов.

У меня есть список с именем lineStarters, который содержит строкузначения "seatA", "seatB" и т. д.

позже в проекте я использую строку:

if line.startswith item in lineStarters and if "False" in line:
  line = line.replace("False","True")

Это дает синтаксическую ошибку.

Для решенияэто я уже попробовал действительно длинное условное утверждение. Это тоже не сработало. Кроме того, это просто не выглядело бы хорошо для моего учителя.

Как мне использовать .startswith с несколькими переменными в Python.

Большое спасибо.

Итак, у меня есть файл seatStatus, который соответствует формату: seatA: False для каждой строки. Скажем, в кинотеатре будет 10 мест, будет 10 линий от места А до местаJ. lineStarters - это массив всех начальных строк, например seatA, seatB (для проверки). Ложь будет означать, что место не забронировано, поэтому по умолчанию оно будет таким, пока не будет изменено, поэтому для соответствующих мест оно заменит Ложное (не забронировано) на Истинное (забронировано). Надеюсь, что это имеет смысл. Спасибо.

1 Ответ

2 голосов
/ 24 октября 2019

Если вы хотите проверить, начинается ли ваша строка с любого из seatA, seatB и т. Д., Вы можете использовать any:

if any(line.startsWith(item) for item in lineStarters) and 'False' in line:
...