繁体   English   中英

我的脚本出现语法错误,但我不知道为什么以及如何修复它>

[英]My script comes up with syntax error but I can't figure out why and how to fix it>

我正在尝试制作一个用户必须猜测歌曲名称的游戏。 他们应该在第一次尝试中得到 3 分。

players_score = 0
first_guess = input ('Enter your first guess: ')
if first_guess==song_name[number[0]]:
    print("Well done! You've earned 3 points")
    players_score= players_score + 3
else first_guess!=song_name[number[0]]:
print("Try again")

这是我对代码的评分部分,出于某种原因就行了

else first_guess!=song_name[number[0]]:

它作为语法错误出现,我不知道为什么以及如何修复它。

这是迄今为止的全部代码以供参考:

# welcoming them to the game
print("Hi, welcome to the game. Before we start, please enter your details so we can verify you are eligible to play. Thanks!")

# input age
password = int(input("Enter password: "))

#checking if the password
if password==1234:
    print("Enjoy the game!")
else:
    print("Try again")
    
    
from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as soup

my_url = 'https://www.officialcharts.com/charts/uk-top-40-singles-chart/'

#opening connection, grabbing page
uClient = uReq (my_url)
page_html = uClient.read()
uClient.close()

#html parsing
page_soup = soup(page_html, "html.parser")
#print (page_soup.p)
 
#grabs each section
containers = page_soup.findAll('div' ,{"class":"title-artist"})

spans = page_soup.findAll('span' ,{"class":"position"})  

# isolates song artist and name
a_tags = [container.findAll('a') for container in containers]
song_name =  [i[0].text for i in a_tags]
song_artist = [i[1].text for i in a_tags]



import random
exampleList = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39]
sampled_list2 = random.sample(exampleList, 1)
number = sampled_list2
random_song_name = song_name[number[0]]
random_song_artist = song_artist[number[0]]
 
meme = WAP
   
for part in number:
        print(random_song_name[0].upper() + ". ", end="")
        print()
        print (random_song_artist)
  
players_score = 0
first_guess = input ('Enter your first guess: ')
if first_guess==song_name[number[0]]:
    print("Well done! You've earned 3 points")
    players_score= players_score + 3
else first_guess!=song_name[number[0]]:
print("Try again")
    ```

您需要将else更改为elif并在下一行添加一个缩进,如下所示:

if first_guess==song_name[number[0]]:
    print("Well done! You've earned 3 points")
    players_score= players_score + 3
elif first_guess!=song_name[number[0]]:
    print("Try again")

或者你可以添加else来保持更清晰的代码,同时做同样的事情:

if first_guess==song_name[number[0]]:
    print("Well done! You've earned 3 points")
    players_score= players_score + 3
else:
    print("Try again")

而不是使用else first_guess!=song_name[number[0]]:尝试只使用else

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM