Я пытался передать некоторые аргументы через PyCharm, когда заметил, что он ведет себя не так, как моя консоль.Когда я передаю аргументы без пробелов между ними, все работает нормально, но когда мои аргументы содержат пробелы внутри него, поведение расходится.
def main():
"""
Main function
"""
for i, arg in enumerate(sys.argv):
print('Arg#{}: {}'.format(i, arg))
Если я запускаю ту же функцию:
python3 argumnents_tester.py 'argument 1' argument2
Выполнить в PyCharm :
Arg # 0: /home/gorfanidis/PycharmProjects/test1/argparse_test.py
Arg # 1: аргумент
Arg # 2: 1 '
Arg # 3: аргумент2
Запуск в Консоль :
Arg # 0: argparse_test.py
Arg# 1: аргумент 1
Аргумент # 2: аргумент2
Итак, PyCharm вообще игнорирует кавычки и разбивает аргументы, используя пробелы независимо от кавычек.Кроме того, аргументы с кавычками обрабатываются иначе, чем те же аргументы без кавычек.
Вопрос в том, почему это происходит, и на практическом уровне, как я могу передать аргумент, содержащий пробелы, используя, например, PyCharm?
Кстати, я пользуюсь Ubuntu 16.04.