-4

Take the list

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

Write a program that prints out all the elements of the list that are less than 5.

  • Instead of printing the elements one by one, make a new list that has all the elements less than 5 from this list in it and print out this new list.
  • Ask the user for a number and return a list that contains only elements from the original list a that are smaller than that number given by the user.

I solved as that:

a = [1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]

num = int (input( "Choose a number: "))

new_list: []

for i in a:
  if i < num:
    new_list.append(i)
print (new_list)

but doesn't work, any advice? Thank you

J...S
  • 5,079
  • 1
  • 20
  • 35
Poldro
  • 9
  • 5
  • 7
    `new_list: []` -> `new_list = []` or simply `new_list = [n for n in a if n – Ma0 Mar 15 '18 at 16:49
  • Possible duplicate of [What is this odd Python colon behavior doing?](https://stackoverflow.com/questions/48323493/what-is-this-odd-python-colon-behavior-doing) – Chris_Rands Mar 15 '18 at 16:59

1 Answers1

2

Your syntax for creating a variable with an empty list is wrong.

You want

new_list = []

rather than

new_list: []

Also in Python, the standard is not to have space between keywords and brackets. print('hello') instead of print ('hello').

blueteeth
  • 3,330
  • 1
  • 13
  • 23