Python 为什么没有定义日数?

Python 为什么没有定义日数?,python,Python,这是老师给我的一段示例代码。有谁能解释一下,在之前没有定义变量day_num的情况下,它是如何用于这个循环的。我试着在循环中打印出来,每次循环运行时它都会增加1。感谢您的帮助。Python变量不必声明;第一次指定给一个时,它将被创建 几乎任何为名称赋值的东西都算作赋值,而不仅仅是actual=语句。这包括: 名称=… 而名称:=…>0: 关于……中的姓名: 导入名称 以…作为名称: 定义函数名: ……等等 除最后一个外,每个都为当前作用域中的名称指定一个值,最后一个仅在函数体的作用域中指定一个值

这是老师给我的一段示例代码。有谁能解释一下,在之前没有定义变量day_num的情况下,它是如何用于这个循环的。我试着在循环中打印出来,每次循环运行时它都会增加1。感谢您的帮助。

Python变量不必声明;第一次指定给一个时,它将被创建

几乎任何为名称赋值的东西都算作赋值,而不仅仅是actual=语句。这包括:

名称=… 而名称:=…>0: 关于……中的姓名: 导入名称 以…作为名称: 定义函数名: ……等等

除最后一个外,每个都为当前作用域中的名称指定一个值,最后一个仅在函数体的作用域中指定一个值。在该语句之前,name是否是变量并不重要;现在是一个

如果不清楚任何赋值发生在何处,则for循环相当于此while循环:

现在很明显,只要iterable不是空的,day_num就会被分配到。

您在循环中声明day_num。基本上,循环是告诉解释器您想要迭代某个东西,并且想要给每个迭代一个名称,在本例中是day_num

在本例中,您提供的iterable的范围是1-8,但您也可以轻松地向它传递一个列表。例如,在这种情况下,您将调用列表day_num的每个元素


每次运行循环时,它都会更新存储在day_num中的值。

请阅读有关循环的内容。这个问题在任何一本初级python编程书中都有答案。您可能会发现查看python很有用。您发布的代码有一个IndentationError,不会运行。这可能与您的问题无关,但您确实需要在这里和实际代码中解决它。您是否感到困惑,因为您首先学习了另一种语言,并且想知道Python与该语言有何不同?如果是这样,如果你告诉我们你的直觉来自哪种语言,我们可能可以更好地解释这种差异。
for day_num in range(1,8):
        sales=float(input("Enter the sales for Day {}".format(day_num)))
        bakery_temp_info.append(sales)
    bakery_sale.append(list(bakery_temp_info))
    del bakery_temp_info[:]
_range18iter = iter(range(1, 8))
try:
    while True:
        day_num = next(_range18iter)
        # body of the for loop
except StopIteration:
    pass
def _range18iter