Собственная функция для list.append
Я новичок. Может кто знает,как правильно с помощью def описать метод list.append не используя данный метод в написании кода. Спасибо за помощь
Ответы (3 шт):
Чтобы не использовать append можно сделать так:
lst = [1, 2, 3]
inp = input('User input')
lst += [inp]
Для имитации append можно использовать свойство сложения списков:
def my_append(list_: list, element):
list_ += [element]
list_ = [1, 2, 3]
my_append(list_, 4)
print(list_)
[1, 2, 3, 4]
Совсем правильно:-) так:
а) Заходите, например, сюда и видите исходник Python. https://github.com/python/cpython/blob/3a8c56295d6272ad2177d2de8af4c3f824f3ef92/Objects/unicodeobject.c#L10600.
б) Находите строчку 11440.
в) Начинаете анализ, что вам нужно переносить, а что нет. И думаете, как переделывать на Python.
При необходимости пользуейтесь документацией по С.
Но это не очень легко будет. Так что рассматривайте ответ, скорее, как расширитель знаний и средство впечатления преподавателя своей эрудицей, чем как практическую рекомендацию. С практической точки зрения переписывание исходника с С на Python не лезет ни в какие ворота.