因此,我正在为不和谐而开发一个聊天机器人,现在正在开发一个可以用作待办事项列表的功能。我有一个命令可以将任务添加到列表中,并将它们存储在字典中。但是,我的问题是以更易读的格式返回列表(参见图片)。
def show_todo():
for key, value in cal.items():
print(value[0], key)
任务存储在一个dict
称为中cal
。但是,为了使bot实际发送消息,我需要使用一条return
语句,否则它将仅将其打印到控制台而不是实际的聊天记录(参见图片)。
def show_todo():
for key, value in cal.items():
return(value[0], key)
这是我尝试解决的方法,但是由于我使用return
了for循环,因此无法正常工作。
那么我该如何解决呢?如何使用return
语句,以便将其打印到聊天记录中而不是控制台中?
return
即使循环尚未完成,使用循环的内部也会破坏循环并退出函数。
例如:
def num():
# Here there will be only one iteration
# For number == 1 => 1 % 2 = 1
# So, break the loop and return the number
for number in range(1, 10):
if number % 2:
return number
>>> num()
1
在某些情况下,如果满足某些条件,我们需要打破循环。但是,在您当前的代码中,在完成循环之前先中断循环是无意的。
除此之外,您可以使用其他方法:
def show_todo():
# Create a generator
for key, value in cal.items():
yield value[0], key
您可以这样称呼它:
a = list(show_todo()) # or tuple(show_todo())
或者您可以遍历它:
for v, k in show_todo(): ...
将数据追加到列表中,然后在循环结束后返回:
def show_todo():
my_list = []
for key, value in cal.items():
my_list.append((value[0], key))
return my_list
或使用列表理解:
def show_todo():
return [(value[0], key) for key, value in cal.items()]
我正在创建一个方法,如果变量elt存在于数组中,它将返回该变量。如果它不存在于数组中,我需要返回null。 问题是,我正在使用for循环中的if语句检查数组中每个项中的变量elt。我不认为我可以在for循环的if语句末尾放一个return语句,因为每次它执行if语句时,潜在的返回值都会不同。我认为这将在每次循环for循环时产生一个新的返回值。为了解决这个问题,我创建了一个名为exist的布尔临时变
我得到的错误是“缺少return语句”,代码如下: 有人能帮帮我吗?多谢.
本文向大家介绍Java中break、continue、return在for循环中的使用,包括了Java中break、continue、return在for循环中的使用的使用技巧和注意事项,需要的朋友参考一下 引言:在使用循环的时候,循环里面带有break、continue、return的时候经常弄混,今天特意整理了下,以待后用... 打印结果: 打印结果: 打印结果: 内层for循环结束… 打印
我有一个380行20列的表格。我想从该表中删除符合特定条件的行。 为了澄清问题,假设我有以下列表: 我想删除在列表中找到姓名的所有人员的数据。 例如,假设我的数据如下所示: 我想删除、和的数据。所以输出应该是: 我的代码正在运行,但数据没有从我的原始数据中删除。当我打开新的测试.txt文件时,我可以看到数据没有被删除。 我可以肯定错误在< code > if data[row][0]= =(I f
问题内容: 我有一个二维布尔数组’poorSignal’,需要编写一个返回网格的方法,如果数组上的某个点为true,则显示X,如果为false,则显示O。这是我的代码: 当我编译时,它在方法的最后一行给出了“丢失的返回语句”。我也不确定在打印数组时’return“ \ n”是否可以添加新行。 这是一个分配问题,所以我不能直接打印它,也不能仅打印布尔值-它必须是产生网格的方法。 问题答案: 编译器无
我是C#的新手,我正在尝试制作一个程序来提示用户输入关于8个vocalist.genre输入的信息,然后根据vocalist.genre输入的内容将这些信息分类到文本文件中。但是,当我尝试使用for循环来处理用户的输入时,我遇到了一个问题。我该怎么办? }