Size: a a a

Сообщество Python Программистов

2021 March 01

AT

Alexander T in Сообщество Python Программистов
a = ['vasya', 'petya', 'kolya']
print(' and '.join(', '.join(a).rsplit(', ', 1)))
источник

OverNull Менеджер... in Сообщество Python Программистов
Alexander T
a = ['vasya', 'petya', 'kolya']
print(' and '.join(', '.join(a).rsplit(', ', 1)))
пх
источник

VD

Vlad Dimmer in Сообщество Python Программистов
Anton Romanenko
Спасибо! Всё бы ничего. Осталось разобраться как это  работает. В книге, по которой учусь, еще не было такого метода. Наверняка должно решаться иначе (больше кода, но с понятной механикой так сказать)
Да, в цикле выводишь все элементы списка, кроме последнего, последний обрабатываешь и выводишь отдельно.

Ну, или последовательно "склеиваешь" строку с добавлением разделителя и выводишь целиком.
источник

OverNull Менеджер... in Сообщество Python Программистов
читаемость лвл 80
источник

VA

Vadim Apenko in Сообщество Python Программистов
Vlad Dimmer
Да, в цикле выводишь все элементы списка, кроме последнего, последний обрабатываешь и выводишь отдельно.

Ну, или последовательно "склеиваешь" строку с добавлением разделителя и выводишь целиком.
Тебя там сишники покусали?
источник

v

v in Сообщество Python Программистов
print(*(spam[:-1] + [f"and {spam[-1]}"]), sep=', ')
Если так хочется однострочником
источник

v

v in Сообщество Python Программистов
Хотя даже не так
print(*spam[:-1], sep =', ', end=f" ,and {spam[-1]}\n")
источник

AT

Alexander T in Сообщество Python Программистов
v
Хотя даже не так
print(*spam[:-1], sep =', ', end=f" ,and {spam[-1]}\n")
-20
источник

K

KarmaBot in Сообщество Python Программистов
Вы уменьшили карму v до 50.00 (-20.00)
источник

VD

Vlad Dimmer in Сообщество Python Программистов
Vadim Apenko
Тебя там сишники покусали?
Эта задачка из Саммерфилда, если память мне не изменяет. И за ним водится такой грешок, чтобы давать задания, для которых студент должен написать свою имплементацию при наличии встроенных решений.
источник

AR

Anton Romanenko in Сообщество Python Программистов
Книга 'Automate the boring stuff with Python'. Автор: Al Sweigart.
источник

VD

Vlad Dimmer in Сообщество Python Программистов
Обознался(
источник

v

v in Сообщество Python Программистов
Ага, неверный результат выдает мое, пофиксил
источник

AR

Anton Romanenko in Сообщество Python Программистов
Метод .join намного понятнее, чем два последних решения. Но ни одного из этих решений еще не было предложено в книге. Книга не предполагает самостоятельное дополнительное изучение в других источниках как на заочном обучении в ВУЗе. Вот и хочу понять, как всё таки с базовыми знаниями я должен был решить данную задачу. В моей голове крутилась логика вывода с добавлением запятой к каждому значению списка за исключением последнего. Так и не смог сообразить как исключить. Извините за мемуары...
источник

AT

Alexander T in Сообщество Python Программистов
Anton Romanenko
Метод .join намного понятнее, чем два последних решения. Но ни одного из этих решений еще не было предложено в книге. Книга не предполагает самостоятельное дополнительное изучение в других источниках как на заочном обучении в ВУЗе. Вот и хочу понять, как всё таки с базовыми знаниями я должен был решить данную задачу. В моей голове крутилась логика вывода с добавлением запятой к каждому значению списка за исключением последнего. Так и не смог сообразить как исключить. Извините за мемуары...
for x in spam[:-1]: …
‘ and ‘ + spam[-1]
источник

AP

Andrei Podchufarov in Сообщество Python Программистов
A-->B-->C-->D-->E-->F=1
Нужно найти количество решений, помогите
источник

AT

Alexander T in Сообщество Python Программистов
Andrei Podchufarov
A-->B-->C-->D-->E-->F=1
Нужно найти количество решений, помогите
решение одно, ты его нашел.
источник

AP

Andrei Podchufarov in Сообщество Python Программистов
Alexander T
решение одно, ты его нашел.
По ответу их 43
источник

AT

Alexander T in Сообщество Python Программистов
Andrei Podchufarov
По ответу их 43
помоги найти количество решений:
C * <—  D ^^ A = (1, 2]
источник

v

voenkom in Сообщество Python Программистов
Alexander T
помоги найти количество решений:
C * <—  D ^^ A = (1, 2]
лол, прошу прощения, это вы о чём вообще
источник