Пичарм продолжает говорить, что в f-строке есть несовпадающее [, но оно совпадаетPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Пичарм продолжает говорить, что в f-строке есть несовпадающее [, но оно совпадает

Сообщение Anonymous »

для класса я пытаюсь написать программу на Python. Одна из строк пытается использовать строку f для сообщения значения ключа («стоимость») внутри словаря («эспрессо»), который находится внутри другого словаря («МЕНЮ»). К сожалению, я продолжаю получать:

Код: Выделить всё

print(f'That drink costs {MENU["espresso"['cost']]}.')
^
Синтаксическая ошибка: f-строка: unmatched '['
Строка кода, которая выдает эту ошибку, выглядит следующим образом:

Код: Выделить всё

print(f'That drink costs {MENU["espresso"['cost']]}.')
Я использую Pycharm с Python 3.9.
Мне казалось, что я понял основную проблему; pycharm/python по какой-то причине не создан для понимания того, что одинарные и двойные кавычки внутри фигурных скобок f-строки на самом деле не являются концом оператора печати, поэтому он завершит оператор печати и увидит остальную часть строки как беспорядочные символы и выдавать по ним синтаксическую ошибку.

Однако, если бы это было так, он должен был бы видеть ']' как несоответствующий, а не '[', как я ожидал, что он подумает находится внутри печати кавычки и поэтому не требуют сопоставления. Но он возражает против скобок, которые должны рассматриваться как внутри одинарных кавычек и нормально печатать в любом случае.
Я также вижу, что пытаюсь использовать одинарные кавычки для ключа «стоимость» внутри одинарных кавычек печати. оператор, но мне приходится использовать двойные кавычки для ключа «эспрессо» первого словаря. Мне не известен какой-либо третий способ показать, что я указываю ключ словаря. Невозможно ли ссылаться на значение внутри вложенного словаря в строке f?

Подробнее здесь: https://stackoverflow.com/questions/792 ... is-matched
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»