作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在允许函数调用另一个函数设置的变量时遇到问题。我相信我知道如何使用单个变量来完成此操作,但我的代码要求它使用多个变量来完成,这是我几个小时以来一直在努力解决的挑战。我读过很多关于其他人似乎已经做到这一点的方法,但我找不到成功实现它们的方法。
#gathers the user's requests
def ask():
userw = int(input('How wide? '))
userh = int(input('How tall? '))
userc = input('What string to use? ')
userc_len = int(len(userc))
return (userw, userh, userc, userc_len)
#draws the rows of the box. First the top with the topbot function, then the body with body(), then the bottom with topbot again
def draw(w, h, c, c_len):
def topbot(w_, c_):
for x in range(w_):
print (c_, end ='')
print ('\n')
def body(w_, h_, c_, c_len_):
for x in range(h_-2):
print (c_, end = '')
for x in range(w_-2):
print(' ' * c_len_, end = '')
print (c_)
topbot(w, c)
body(w, h, c, c_len)
topbot(w, c)
#begins draw
draw(userw, userh, userc, userc_len)
当draw
函数尝试以userw、userh、userc、userc_len
的参数开始,但找不到它们时,问题就开始了:
NameError: name 'userw' is not defined
当我尝试运行它时返回。
draw
函数中定义 topbot
和 body
并按照我的方式管理参数是否正确? ask
返回四个变量,以便 draw
可以将它们用作参数?最佳答案
ask() 是一个将返回 4 个值的函数。所以,
returnValues = ask()
draw = draw(*returnValues)
or simply, draw = draw(*ask())
此外,end = ' ' 也不正确。相反,您可以只使用 print(c_,'')。必要时包括验证。就像如果我在“多宽?”中输入“hi”会怎样。在这种情况下,程序应该告诉我这是错误的。
关于python - 退回多件贵重元素,然后分别调用这些贵重元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37894036/
这是工作代码(但在 UI 线程上): 这是我尝试编写的代码,但它不起作用:(代码隐藏) InitializeComponent();
我是一名优秀的程序员,十分优秀!