2017-10-10 55 views
-3

我使用下面的代码:在iterweekdays发生什么()函数

import calendar 
cal= calendar.Calendar(firstweekday=3) 
for x in cal.iterweekdays(): 
    print(x) 

其中显示了以下结果:

3 4 5 6 0 1 2  

谁能解释一下iterweekdays()函数实际上呢?

+3

你读过[文件](https://docs.python.org/3/library /calendar.html#calendar.Calendar.iterweekdays)?你不明白什么? – mkrieger1

+0

我已阅读此功能的文档,但仍然无法理解。文档链接:https://docs.python.org/2/library/calendar.html#calendar.Calendar.iterweekdays –

+1

而且*你不明白什么?也许你可以描述你期望这个功能做什么? – mkrieger1

回答

0

由于docs说:

iterweekdays()
回报为将 用于一个星期的工作日数的迭代器。迭代器的第一个值将是 与第一天属性的值相同。

请注意文档说明第一个值与firstweekday中定义的相同。在你的情况下:firstweekday=3以及为什么它从3到6,然后是0,1和2.在计算机科学中,通常从0开始计数。

从你的问题很难理解,但在要显示的各天的名称,你可以使用:

for x in cal.iterweekdays(): 
    calendar.day_name[x] 

你会得到回报:

'Thursday' 
'Friday' 
'Saturday' 
'Sunday' 
'Monday' 
'Tuesday' 
'Wednesday' 
0

的iterweekdays()方法返回一个迭代器平日数字,将被使用一个星期。迭代器中的第一个数字将与firstweekday()返回的数字相同。

您已将3设置为本周开始。

现在iterweekdays(),打印您的所有天在一个星期开始用3一天,所以你得到

3 4 5 6 0 1 2 
+0

好的!我认为迭代器就像循环一样,每当它停止7天时,它就会循环,我还有一个疑问,我可以在这里使用任何字符串? –

+0

我建议先学习基本的Python语法。你正在尝试做某事,但你不知道该怎么做,也不知道该怎么做,所以我们也一样。尝试描述你的问题,而不是问X做了什么功能。 –