![]() |
If / loops help - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: Homework (https://python-forum.io/forum-9.html) +--- Thread: If / loops help (/thread-31233.html) |
If / loops help - kam_uk - Nov-29-2020 Hi I am going through the Python Crash Course book, and answering the questions in each chapter. I'm stuck at one. The question is: 1. Create a list of numbers from 1 - 9 2. Loop through the list and using if-elif-else the output should read "1st 2nd 3rd" etc with each result on the new line. So I did this: numbers_list = list(range(1,10)) print(numbers_list) for number in numbers_list: if number == '1': print(f"{number}st")I printed the list as soon as I created it to make sure that was ok, which it was. I then created a for loop to go through each number. I tested '1' but that doesn't seem to work. Any ideas? RE: If / loops help - deanhystad - Nov-29-2020 1, not '1'. '1' is a string, not a number. list(range(1,10)) makes a list of numbers. RE: If / loops help - jefsummers - Nov-29-2020 Also, you haven't handled 2nd, 3rd, and 4th-9th RE: If / loops help - GirishaSJ - Dec-03-2020 As you are trying to read the integer values stored on your "numbers_list" by a string value of "1" , so the if loop will fail always. You can try , with 2 ways : #One way numbers = list(range(1,11)) #range(1,10) or range(1,11) based on your requirement print(numbers) for num in numbers: if(num==1): print(num) elif(num==2): print(num) else: if(num==3): print(num) else: continue #Second way for num in numbers: if(num<=3): print(num) else: continue RE: If / loops help - buran - Dec-03-2020 Just to mention that there is no need to add brackets around the condition (unless it's really necessary for precedence). if num <= 3: is just fine. Also no need to add redundant else: continue
|