В книге Лунц М. “Изучаем питон” , на стр. 240 есть такой пример
somelist = list('SPAM') 'first={0[0]}, third={0[2]}'.format(somelist)
понятно что идет обращение к индексу в списке но почему это сделано так а не так например
first={somelist[0]}
,
somelist = list('SPAM') 'first={0[0]}, third={0[2]}'.format(somelist)
first={somelist[0]}
roggergpython.org. format
Но я не где не нашел обьяснения что означает первый ноль в выражении
somelist = list('SPAM') 'first={0}, third={0}'.format(somelist) first=['S', 'P', 'A', 'M'], third=['S', 'P', 'A', 'M']
somelist = list('SPAM') print('first={0}, third={2}'.format(*somelist)) first=S, third=A
marvellikТ.Е. вы считаете что способ примененный в языке необоснован?
я тоже не понял что это дает
'first={0}, third={1}'.format(somelist[0],somelist[1])
somelist=[1,2,3] f'first={somelist[0]}, third={somelist[1]}'
marvellikОн просто вставил без тегов кода. А когда вставляешь без тегов кода, форум удаляет квадратные скобки (думает, что это теги какие-то). Поэтому он вставлял одно рабочее, а получилось другое тоже рабочее.
я тоже не понял что это дает
doza_andя из вопроса автора исходил о непонятках где написан такой вариант ‘first={0}, third={0}’.format(somelist). ваш варианты совершенно понятны когда аргументами являются элементы списка взятые по индексу
doza_and
roggerg
Вопрос осталься в силе.
roggergПотому что функция не знает имени объекта который ей передали (общее свойство всех функций питона), поэтому не может знать что его звали somelist
но почему это сделано так а не так например
'first={somelistX[0]}, third={somelistX[2]}'.format(somelistX=somelist)
roggergЭто номер аргумента метода format
Но я не где не нашел обьяснения что означает первый ноль,
"{0},{1},{2}".format("a","b","c") >>> "a,b,c"
doza_andОно уже реализовано в версии 3.6, которая ещё не вышла.
Вопрос о неявной интерполяции окружения обсуждается
py.user.nextДа но вот докустимо его использовать или нет это вопрос. В разных командах по разному. Может быть так что это не будет приветствоваться в том коллективе с которым ТС будет общаться.
Оно уже реализовано