我正在尝试从一个教程中完成一项任务,即定义一个函数,该函数将输入一个输入的单词,到目前为止我已经:
s = raw_input("Enter a word:")
n = input("Enter a number:")
def repeat_this(s, n):
print s * n
然而,在repeat_this中本地没有定义s和n,但是当我在函数中定义s和n时,我无法让用户输入工作,是否有人可以提供有关如何使其工作的任何提示? / p>
N.B。当我运行包含它的文件时,它接受s和n的输入,但随后留下一个空行并开始一个新的空行,其中repeat-this未定义。
答案 0 :(得分:2)
你没有打电话给这个功能。将其添加到脚本的末尾:
repeat_this(s, n)
此外,您的输入应该都是raw_input()
(使用int()
将数字强制转换为整数而不是危险地允许Python解析它)并且应该低于函数定义(它可能会工作)无论哪种方式,但将所有脚本内容放在函数和全局变量定义之下是更好的风格。把它们放在一起:
def repeat_this(s, n):
print s * n
s = raw_input("Enter a word:")
n = int(raw_input("Enter a number:"))
repeat_this(s, n)
答案 1 :(得分:0)
除了嵌入式打印之外,您的repeat_this()
函数实际上是乘法运算符,可以单独使用它作为函数:
from operator import mul
s = raw_input("Enter a word:")
n = input("Enter a number:")
print mul(s, n)