смотри, sys.argv это аргументы, переданные в программу. выглядит это так:
ты пишешь в командной строке
ex32.py utf-8 strict
и внутри твоей программы в sys.argv лежит [‘
ex32.py’, ‘utf-8’, ‘strict’]
когда ты пишешь script, encoding, error = sys.argv
это означает
script, encoding, error = [‘
ex32.py’, ‘utf-8’, ‘strict’]
и это то же самое, что
script = ‘
ex32.py’
encoding = ‘utf-8’
error = ‘strict’
но ты вызываешь прогу не в командной строке, и не передаешь туда аргументы. получается что в sys.argv только
ex32.py, и в encoding и error нечего записать