Python - TypeError: об'єкт 'list' не можна викликати [закрито]


0

Я намагаюся написати текстовий файл із списком переставлених алфавітів, щоб кожен починався з іншого символу. Першу букву переміщуємо до кінця, повторюємо.

    alphabet = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']

    # generate 26 alpabets without typing all
    def alpha_gen(alphabet,a_list):
       x = 0
       while x < 26:
           alphabet += [alphabet.pop(0)]
           key = alphabet(0)
           written = str(key) + ' : ' + str(alphabet) + '\n'
           a_list.write(written)
           x += 1

    def main():
       a_list = open('alpabet_list.txt', 'w')
       alpha_gen(alphabet, a_list)
       a_list.close()

    if __name__ == '__main__': main()

Але я отримую цю помилку:

    File "vigenere_cipher.py", line 13, in alpha_gen
    key = alphabet(0)
    TypeError: 'list' object is not callable

Також це питання належить до Stack Overflow, а не до Super User :)
gogeccc

Відповіді:


0
File "vigenere_cipher.py", line 13, in alpha_gen
key = alphabet(0)
TypeError: 'list' object is not callable

У Python ()вкажіть, що ви хочете викликати (виконати) якусь функцію. Те, що ви робите в рядку 13 alphabet(0), намагається називати alphabetсписком, а не функцією. Змініть його, щоб alphabet[0]отримати доступ до першого елемента alphabetсписку.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.