Расширение фигурных скобок не выполняется в bash в Linux при вызове из PythonPython

Программы на Python
Ответить
Anonymous
 Расширение фигурных скобок не выполняется в bash в Linux при вызове из Python

Сообщение Anonymous »

Рассмотрите расширение фигурных скобок в bash:

Код: Выделить всё

for i in {1..10}; do
echo $i;
done;
Я вызываю этот скрипт из оболочки (в macOS или Linux), и фигурная скобка расширяется:

Код: Выделить всё

$ ./test.sh
1
2
3
4
5
6
7
8
9
10
Например, я хочу вызвать этот скрипт из Python:

Код: Выделить всё

import subprocess

print(subprocess.check_output("./test.sh", shell=True))
В macOS этот вызов Python расширяет фигурную скобку, и я вижу следующий результат:

Код: Выделить всё

b'1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n'
В Linux этот вызов Python не может раскрыть фигурную скобку, и я вижу следующий результат:

Код: Выделить всё

b'{1..10}\n'
Почему расширение фигурных скобок работает в интерактивной оболочке (macOS или Linux) и при вызове из Python в macOS, но не работает при вызове из Python в Linux?
>

Подробнее здесь: https://stackoverflow.com/questions/791 ... rom-python
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»