2017-03-20 244 views
0

如何使用for循環而不是while循環產生一些計數的代碼?我的代碼如下;在while循環中使用for循環

def square(): 
    count = 1 
    number = input("How far?") 
    number = int(number) 
    if number < 1: 
     print ("broken") 
    elif number >= 1: 
     while count <= number: 
      square = count*count 
      print ("{0}*{0}={1}".format(count, square)) 
      count = count+1 
square() 
+3

沒有ü約'for'循環Python文檔讀入? –

回答

1

你可以那樣做:

def square(): 
    number = input("How far?") 
    number = int(number) 
    if number < 1: 
     print ("broken") 
    elif number >= 1: 
     for count in range(1,number+1): 
      square = count*count 
      print ("{0}*{0}={1}".format(count, square)) 
square() 

使用線

for count in range(1,number+1): 

counts迭代值1,2,...,number

0

U可以以列表內涵一樣做到這一點:

def square(): 
    number = int(input("How far?")) 
    # range will be from 1 to number +1, and will proceed square for all 
    return [val ** 2 for val in range (1, number+1)] 

squares = square() 
if not squares: 
    print('broken') 
# u can iterate over result even if list is empty(if u pass broken number) 
for val in squares: 
    print ("{0}*{0}={1}".format(count, square))