[python] 1 resultaat terug ipv lijst

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • Smartbikers
  • Registratie: April 2020
  • Laatst online: 07:42
Mijn vraag
Ik ben via plurale bezig met mijn eerste python opdracht en heb verder 0 ervaring met deze taal. De opdracht die ik nu voorgeschoteld krijg is om
1) aan te geven welke films er draaien
2) te vragen op welk tijdstip een persoon een film wilt zien
3) aan te geven of die film wel/niet speelt op die tijd.

Ik krijg alleen bij de eerste vraag (welke films draaien er) maar 1 film terug (Dus altijd ' The Grinch' ) ipv een lijst. Kan iemand zien waar mijn fout zit?

current_movies = { 'The Grinch':'11:00am',
'Rudolph':'1:00pm',
'Frosty the snowman':'3:00pm',
'Christmas Vacation':'5:00pm'}

print("We are showing the following movies:")
for key in current_movies:
print(key)
movie = input('What movie would you like the showtime for?\n')

showtime = current_movies.get(movies)
if showtime == None:
print("Requested showtime isn't playing")
else:
print(movie, 'is playing at', showtime)

Alle reacties


Acties:
  • +1 Henk 'm!

  • RudolfR
  • Registratie: Maart 2011
  • Laatst online: 10:22
Hier werkt het gewoon
code:
1
2
3
4
5
6
7
8
We are showing the following movies:
The Grinch
Rudolph
Frosty the snowman
Christmas Vacation
What movie would you like the showtime for?
Rudolph
Rudolph is playing at 1:00pm


https://onlinegdb.com/PZuv74FHP

Alleen sla je de filmkeuze op in 'movie' terwijl je verderop 'movies' gebruikt.

Acties:
  • +2 Henk 'm!

  • Barreljan
  • Registratie: December 2001
  • Laatst online: 30-09 13:10

Barreljan

...Zoom-Zoom...

Ik krijg alleen bij de eerste vraag (welke films draaien er) maar 1 film terug (Dus altijd ' The Grinch' ) ipv een lijst. Kan iemand zien waar mijn fout zit?
Dat is een indentation fout.

code:
1
2
3
4
print("We are showing the following movies:")
for key in current_movies:
    print(key)
    movie = input('What movie would you like the showtime for?\n')


Dit geeft de eerste key en start dan je input

versus

code:
1
2
3
4
print("We are showing the following movies:")
for key in current_movies:
    print(key)
movie = input('What movie would you like the showtime for?\n')


De for-loop word voltooid en start daarna pas de input

Als je dus geen for-loop wil omdat de indentation maar 'lastig' blijft:

code:
1
2
3
print("We are showing the following movies:")
print('\n'.join(current_movies))
movie = input('What movie would you like the showtime for?\n')


;)

[ Voor 15% gewijzigd door Barreljan op 16-11-2021 11:15 ]

Time Attacker met de Mazda 323F 2.5 V6 J-spec | PV output