以设计格式将函数输出作为另一个函数参数传递
Pass functions output as another functions argument in designed format
我有以下功能,我将输出存储到一个名为 post
的变量中。
jobs = ('Cook', 'Vet', 'Doctor', 'Pilot')
def careers():
output_of_careers = "Heres a list of jobs\n\n"
for j in jobs:
output_of_careers += f"This person is a {j}.\n"
output_of_careers += "\nAre you interested in any of these as careers?"
return output_of_careers
post = careers()
我需要将其传递给另一个函数(例如)apicall
apicall(argument1,argument2,post)
最终发生的事情是我得到 None
作为对函数中 post
参数的响应,即使我使用 print(post)
或 print(careers())
。
我需要的是 post
显示函数 careers()
的以下打印输出
Heres a list of jobs
This person is a Cook.
This person is a Vet.
This person is a Doctor.
This person is a Pilot.
Are you interested in any of these as careers?
在 Python 中完成此任务的正确方法是什么?谢谢
编辑添加apicall()
功能供参考
def apicall(arugment1,arugment2,post):
apikey = 'Key here'
headers = {'X-API-Key' : apikey}
uri = 'urihere'
# Set Query
query = 'mutation {windowUpdate(guid: "' + arugment1 + '", window: {id: "' + arugment2 +'", configuration: {combobox: {text: "' + str(post) + '"}}, {errors {description}}}'
response = requests.post(uri, headers = headers, data=query)
print(response)
您的代码看起来非常正确,除了您可能希望将 jobs
参数传递给 careers()
,以便该函数的输出可以根据您传递给它的作业而改变。
jobs = ('Cook', 'Vet', 'Doctor', 'Pilot')
def careers(jobs):
output_of_careers = ""
output_of_careers += output_of_careers +"Heres a list of jobs\n\n"
for j in jobs:
output_of_careers = output_of_careers +"This person is a " + j + ".\n"
output_of_careers = output_of_careers +"\nAre you interested in any of these as careers?"
return output_of_careers
post = careers(jobs)
def apicall(argument1, argument2, post_argument):
print(post_argument)
apicall(post)
# Output:
# Heres a list of jobs
#
# This person is a Cook.
# This person is a Vet.
# This person is a Doctor.
# This person is a Pilot.
#
# Are you interested in any of these as careers?
如果您的 apicall
函数返回的响应中没有任何内容,很可能是您没有将正确的数据发布到 API。我们将不得不查看函数以确定那里出了什么问题。
我有以下功能,我将输出存储到一个名为 post
的变量中。
jobs = ('Cook', 'Vet', 'Doctor', 'Pilot')
def careers():
output_of_careers = "Heres a list of jobs\n\n"
for j in jobs:
output_of_careers += f"This person is a {j}.\n"
output_of_careers += "\nAre you interested in any of these as careers?"
return output_of_careers
post = careers()
我需要将其传递给另一个函数(例如)apicall
apicall(argument1,argument2,post)
最终发生的事情是我得到 None
作为对函数中 post
参数的响应,即使我使用 print(post)
或 print(careers())
。
我需要的是 post
显示函数 careers()
Heres a list of jobs
This person is a Cook.
This person is a Vet.
This person is a Doctor.
This person is a Pilot.
Are you interested in any of these as careers?
在 Python 中完成此任务的正确方法是什么?谢谢
编辑添加apicall()
功能供参考
def apicall(arugment1,arugment2,post):
apikey = 'Key here'
headers = {'X-API-Key' : apikey}
uri = 'urihere'
# Set Query
query = 'mutation {windowUpdate(guid: "' + arugment1 + '", window: {id: "' + arugment2 +'", configuration: {combobox: {text: "' + str(post) + '"}}, {errors {description}}}'
response = requests.post(uri, headers = headers, data=query)
print(response)
您的代码看起来非常正确,除了您可能希望将 jobs
参数传递给 careers()
,以便该函数的输出可以根据您传递给它的作业而改变。
jobs = ('Cook', 'Vet', 'Doctor', 'Pilot')
def careers(jobs):
output_of_careers = ""
output_of_careers += output_of_careers +"Heres a list of jobs\n\n"
for j in jobs:
output_of_careers = output_of_careers +"This person is a " + j + ".\n"
output_of_careers = output_of_careers +"\nAre you interested in any of these as careers?"
return output_of_careers
post = careers(jobs)
def apicall(argument1, argument2, post_argument):
print(post_argument)
apicall(post)
# Output:
# Heres a list of jobs
#
# This person is a Cook.
# This person is a Vet.
# This person is a Doctor.
# This person is a Pilot.
#
# Are you interested in any of these as careers?
如果您的 apicall
函数返回的响应中没有任何内容,很可能是您没有将正确的数据发布到 API。我们将不得不查看函数以确定那里出了什么问题。