Что делает «python3 -t»?

$ python3 -t -c 'print("hello world")'
hello world

Что делает -t? В python3 --help об этом не упоминается.

Обычно неизвестные параметры вызывают ненулевой код выхода, например

$ python3 -r
Unknown option: -r
usage: python3 [option] ... [-c cmd | -m mod | file | -] [arg] ...
Try `python -h' for more information.

Я предполагаю, что это остаток от Python 2. Сейчас не могу проверить, работает то же самое.

Ignatius Reilly 01.08.2024 23:15
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
5
1
78
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Опция -t в python3 — это функция Python 2.x, которая предупреждала о непоследовательном использовании табуляции и пробелов в исходном коде. Однако эта опция была удалена в Python 3.x.

Поэтому, когда вы запускаете python3 -t -c 'print("hello world")', Python 3 просто игнорирует опцию -t и выполняет код как обычно.

Чтобы уточнить, удалено в том смысле, что версия с ошибкой (а не с предупреждением) -tt стала поведением по умолчанию.

Ry- 01.08.2024 23:32

Если на самом деле он ничего не делает, почему его не удалили, когда удалили другие параметры, такие как -U в Python 3.0?

no step on snek 01.08.2024 23:34

Параметр -t мог быть оставлен для обратной совместимости или потому, что он не конфликтовал с какими-либо новыми функциями и не вызывал каких-либо проблем.

caroch 01.08.2024 23:37

@nosteponsnek: Это всего лишь предположение, но -U уже был «опцией, которую не следует использовать», а -tt была распространенной хорошей идеей, поэтому, возможно, значение обратной совместимости было оценено как другое.

Ry- 01.08.2024 23:40

Другие вопросы по теме