Python:如何使嵌套循环工作?

问题描述:

我想从13列和13xx行的数据点获取每个数据点。而且我想我可以做一个嵌套循环得到每个数据点,但是下面的代码是不工作:Python:如何使嵌套循环工作?

i = 0 
for row in data.itertuples(): 
    while i < len(da) - 1: 
     price = row[i:i+1] 
     price, = price 
     print(price) 
     i += 1 

这是我得到的唯一值(这是从一排专用)。我如何获得所有的行?

2011-12-12 00:00:00 64.58 64.92 63.935 64.31 8793500.0 0.0 1.0 53.7727555366 54.0558576872 53.235694104

+0

你从来没有重置我循环一次后,我认为是必要的。惊讶这不会引发OOB异常。什么是'da'?你的意思是'排'吗? – Carcigenicate

移动计数器到块:

for row in data.itertuples(): 
    i = 0 
    while i < len(da) - 1: 
     price = row[i:i+1] 
     price, = price 
     print(price) 
     i += 1 
+0

是的,应该看到我自己。谢谢。 – MathiasRa

为什么不实际的嵌套循环?

for row in data: 
    for column in row: 
     print(column) 
+0

他从每一行获得两个值,然后他只提取一个值。这可能是SO的简化,但他确实需要内循环中的多个值。只是猜测。 – Adirio

我不是一个Python的专家,但如果我在C#我要嵌套写这个的是,而不是使用一段时间。根据我的经验,只有在适当的情况下才能使用,在这种情况下,我们可以更简单地循环使用此代码。您已经使用第一个循环确定了行,因此下一步显示列的步骤是在列中搜索这些行。如果你想坚持“i = 0”,那么foreach栏是要走的路。但是,foreach对您的程序征税更多,而不是仅仅使用for,while就不需要(这是foreach的两倍)。你想避免进入无限循环地狱的可能性。就像丹尼尔上面提到的那样,再次不是Python专家,而是使用for语句来查找列,看起来好像在这里工作得很好。