我开始参加python课程,我试图弄清楚如何从我的家庭作业文件中运行我的功能。我打开终端,将目录更改为桌面(我的hw1.py文件所在的位置),启动python,然后输入" import hw1"。然后我输入fizzbuzz(15)并返回此语句:
Traceback (most recent call last): File "<stdin>", line 1, in <module>
我尝试运行的唯一功能是:
def fizzbuzz(n):
if (n % 3) == 0 and (n % 5) == 0:
return "FizzBuzz"
elif (n % 3) == 0:
return "Fizz"
elif (n % 5) == 0:
return "Buzz"
答案 0 :(得分:3)
import hw1
然后使用hw1.fizzbuzz(15)
您也可以使用:
from hw1 import fizzbuzz
因此您已将fizzbuzz
导入当前的命名空间,然后可以使用fizzbuzz(15)
调用它。
import hw1
只是导入模块名称而不是其中定义的所有函数,因此使用my_module.my_function
或from my_module import my_function
语法。
答案 1 :(得分:0)
方法1:
import hw1
hw1.fizzbuzz(15)
方法2:
from hw1 import fizzbuzz
fizzbuzz(15)
答案 2 :(得分:0)
我包含这个答案,因为谷歌在相关搜索案例中这个问题很高。用例正在执行Python脚本以使用系统参数执行其中的函数。 货币兑换费用计算器的代码示例
# 2000 euro 26.6.2017
# python countCurrencyRate.py 18870.75 18908.76
# Output: Currency exchange expense: 0.00201220185227
#
# For https://money.stackexchange.com/a/20277/1627
import sys
a1 = float( sys.argv[1] )
b1 = float( sys.argv[2] )
def countCurrencyRate(a=a1, b=b1):
# a google currency rate, b destination currency rate; or reverse
ave = (a+b)/2
diff = abs(b-a)
result = diff/ave
print("Currency exchange expense: %s" % result)
if __name__ == "__main__":
countCurrencyRate(a1, b1)
Python:2.7.9
答案 3 :(得分:0)
尽管此问题是关于在Module中Python Interpreter内的python文件(作为Interactive Mode)中执行函数,但也可以用一个函数或模块来运行函数-liner(即不使用交互式解释器),如Command line and environment中所述。除其他外:
用-c命令调用时,它将执行给定的Python语句 作为命令。此命令可能包含多个由分隔的语句 换行符。领先的空格在Python语句中很重要!
虽然字符串等的引号需要转义(取决于您的环境),但我可以使用以下命令在Windows 10和python 3.8上获得所需的输出:
python -c "import hw1; print(hw1.fizzbuzz(15))"
FizzBuzz
我不能简单地insert a newline on Windows CMD,所以这可能仅限于Simple statements:
一个简单的语句包含在单个逻辑行中。一些 简单的语句可能在以分号分隔的一行上。