繁体   English   中英

我不在 print_output 函数中出现此错误的原因

[英]I don't under the reason for this error in the print_output function

我不知道 print_output 函数中出现此错误的原因。 这可能是其他功能的问题。 我不确定格式错误是什么。

'''

 def print_output(i):
   print (f"OUTPUT {i}")

 def triangle_hypotenuse(side_1, side_2):
   sqrt((side_1 ** 2) + (side_2 ** 2)) = h
   h = "{:.2f}".format(h)
   print_output(h)

 def feet_to_meters(feet):
   meters = feet/3.281
   meters = "{:.4f}".format(meters)
   print_output(meters)

 def polar_coords(x,y):
   radius = math.sqrt( x * x + y * y )
   theta = math.atan(y/x)
   theta = 180 * theta/math.pi
   r = "{:.2f}".format(radius)
   t = "{:.2f}".format(theta)
   phrase_1 = "r: " + r
   phrase_2 = "theta: " + t
   combined = phrase_1 + phrase_2
   print_output(combined)

 def dollars_to_euros(dollars):
   euros = dollars * 0.99
   euros = "{:.2f}".format(dollars)
   print_output(euros

Error : 
 >>> print_output("Hello World")
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
print_output("Hello World")
NameError: name 'print_output' is not defined

'''

创建一个 txt 文件并将其命名为“myfile.py”。 确保您的文件扩展名已从 .txt 更改为 .py。 然后将以下内容粘贴到该 python 文件中,您可以使用 IDE 或记事本打开该文件。

import math
def print_output(i):
   print (f"OUTPUT {i}")

def triangle_hypotenuse(side_1, side_2):
   h = math.sqrt((side_1 ** 2) + (side_2 ** 2))
   h = "{:.2f}".format(h)
   print_output(h)

def feet_to_meters(feet):
   meters = feet/3.281
   meters = "{:.4f}".format(meters)
   print_output(meters)

def polar_coords(x,y):
   radius = math.sqrt( x * x + y * y )
   theta = math.atan(y/x)
   theta = 180 * theta/math.pi
   r = "{:.2f}".format(radius)
   t = "{:.2f}".format(theta)
   phrase_1 = "r: " + r
   phrase_2 = "theta: " + t
   combined = phrase_1 + phrase_2
   print_output(combined)

def dollars_to_euros(dollars):
   euros = dollars * 0.99
   euros = "{:.2f}".format(dollars)
   print_output(euros)
if __name__ == "__main__":
   print_output("Hello World")

现在在 python 文件所在的地址栏中,键入 CMD 并按 Enter 键,如此屏幕截图所示

在命令终端中,键入python myfile.py ,您的 python 文件将执行

根据我的 VSCode 的 Python 扩展,这段代码存在多个问题。 我试图纠正错误:

import math


def print_output(i):
   print (f"OUTPUT {i}")

def triangle_hypotenuse(side_1, side_2):
   h = math.sqrt((side_1 ** 2) + (side_2 ** 2))
   h = "{:.2f}".format(h)
   print_output(h)

def feet_to_meters(feet):
   meters = feet/3.281
   meters = "{:.4f}".format(meters)
   print_output(meters)

def polar_coords(x,y):
   radius = math.sqrt( x * x + y * y )
   theta = math.atan(y/x)
   theta = 180 * theta/math.pi
   r = "{:.2f}".format(radius)
   t = "{:.2f}".format(theta)
   phrase_1 = "r: " + r
   phrase_2 = "theta: " + t
   combined = phrase_1 + phrase_2
   print_output(combined)

def dollars_to_euros(dollars):
   euros = dollars * 0.99
   euros = "{:.2f}".format(dollars)
   print_output(euros)


print_output("Hello World")

更正:

  1. 我不确定这是否是由于复制粘贴造成的,但目前指示是错误的。 必须删除每行之前的第一个空格字符。
  2. 表达式sqrt((side_1 ** 2) + (side_2 ** 2)) = h无效。
  3. 函数dollars_to_euros末尾缺少)

要运行您的功能,计算机需要知道在哪里寻找它。 如果你直接在命令行中运行这些函数,除非你也在那里编写了函数,否则它们将不起作用。

您可能已将代码保存在文件中,例如 test.py。 将此添加到代码的顶部或底部。 并在您的解释器(vscode、intellij、pycharm、python 自己的或其他)中运行该文件。

def print_output(i):
   print (f"OUTPUT {i}")
.
.
.
print_output("hello")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM