#python #list #function #dictionary #brackets
#python #Список #функция #словарь #скобки
Вопрос:
Я хочу использовать квадратные скобки после вызова функции. Это что-то вроде этого
function()[‘Name’]
Я хочу, чтобы результат был «Энди». Каким должен быть синтаксис функции def? Я всегда получаю сообщение об ошибке, в котором говорится, что оно не подписывается. Это мой текущий код
def function1():
A={'Name':'Andy'}
return
function1()['Name']
Комментарии:
1. Функция должна возвращать что-то подписываемое, например, dict .
2. Ваш usecase неясен. Чего вы пытаетесь достичь с его помощью? Возможно, упомянуть в качестве примера ввода и вывода.
Ответ №1:
Для того, чтобы это сработало function
, нужно было бы вернуть dict
def function():
return {'Name': 'Andy', 'Age': 20}
>>> function()['Name']
'Andy'
В вашем примере вы должны изменить свою функцию следующим образом
def function1():
A = {'Name': 'Andy'}
return A
Комментарии:
1. Чтобы на выходе было написано `Andy», оно должно быть «` print(function()[‘Name’]) « Можем ли мы вызывать ‘Andy; без
2. @pangu70 вам просто нужно запустить python в интерактивном режиме. — Тогда, если вы просто укажете переменную, она будет автоматически напечатана.
Ответ №2:
Я не совсем понимаю ваш вопрос. Но если вы хотите использовать квадратные скобки и найти свое значение по строке, вам следует использовать словари. Итак, функция и печать должны выглядеть следующим образом `
def function():
return {'Name':'andy'}
print(function()['Name'])
EDIT: You can do something like this, and that will print the answer, but i dont think its really practicall, because, yo are not storing the name anywhere
def function():
return {'Name':print('Andy')}
function()['Name']
Комментарии:
1. Спасибо, это работает, но можем ли мы вызвать Andy без