У меня есть простая функция, которая просто печатает «Привет!». Я хочу использовать bash для вызова моей функции, вместо того, чтобы говорить IDLE. Однако bash, похоже, не хочет печатать результат, возвращаемый функцией hi():.Создание bash выводит значение (строка) из функции python
#!/usr/bin/python
def hi():
print 'Hi!'
Это не печатает «Привет!», Когда я типа питона hi.py (или ./hi.py) в Баш
Однако если я не включать оператор печати внутри функции, но только внутри файла hi.py как одиночного напечатайте 'Привет!' заявление; то bash выводит текст «Привет!». соответственно. Из bash этот код ниже выводит Hi!
#!/usr/bin/python
print 'Hi!'
Изнутри Баш, как я мог бы сделать выход Баш строку из функции привет(): в файле hi.py?
Благодаря
Вам необходимо вызвать функцию. например добавьте 'hi()' в конец вашего скрипта python. (это часто делается в пакете '' if __name__ == '__main __': '] (http://stackoverflow.com/questions/419163/what-does-if-name-main-do) ...) – mgilson
Если вы действительно хотите запустить определенную функцию (а не модуль), обратитесь к [this] (http://stackoverflow.com/questions/2119702/calling-a-python-function-from-bash-script) вопросу. Однако, похоже, что вы хотите, это то, что предложил @mgilson. –
Спасибо, и жаль, что мне пришлось переписать мой титул. – Skillionaire