运行Python代码时出现另一个回溯错误

时间:2019-06-21 15:01:43

标签: python python-3.x pandas jupyter-notebook

我有一个新的Traceback Error When,我运行我的Python代码。它似乎与代码中的最后一个()括号有关,也可能与最后一个]有关。

((df['Location'].str.contains('- Display')) & 
                df['Lancaster'] != 'L' & 
                df['Dakota'] == 'D' & 
                df['Spitfire'] == 'SS' &
                df['Hurricane'] != 'H'))
              )]      

这是我得到的回溯错误:

        File "<ipython-input-5-6d53e7e5ec10>", line 31
        )
        ^
    SyntaxError: invalid syntax  

这是我最新的完整代码John S,可以正常工作。如果有的话,我会让你知道 还有更多问题,非常感谢您的帮助:

import pandas as pd import requests from bs4 import BeautifulSoup

res = requests.get("http://web.archive.org/web/20070701133815/http://www.bbmf.co.uk/june07.html")
soup = BeautifulSoup(res.content,'lxml')
table = soup.find_all('table')[0]

df = pd.read_html(str(table))
df = df[1]
df = df.rename(columns=df.iloc[0])
df = df.iloc[2:]
df.head(15)

display = df[(df['Location'].str.contains('- Display')) & (df['Dakota'].str.contains('D')) & (df['Spitfire'].str.contains('S')) & (df['Lancaster'] != 'L')]     
display </code>

2 个答案:

答案 0 :(得分:0)

您只需要很多括号

((df['Location'].str.contains('- Display') & 
  df['Lancaster'] == '' & 
  df['Dakota'] == 'D' & 
  df['Spitfire'] == 'SS' & 
  df['Hurricane'] == ''))

您需要在每个('-Display')之后删除一个')',看来您在对数据进行排序时仍然会遇到一些问题。但这应该可以避免语法错误。

查看此在线版本,请参阅我的修改。

https://onlinegdb.com/Skceaucyr

答案 1 :(得分:0)

您最后需要添加“)]”。所以您可变的绍斯波特将是现在

Southport = df[
    (
        ((df['Location'].str.contains('- Display') & 
        df['Lancaster'] != 'L' & 
        df['Dakota'] == 'D' & 
        df['Spitfire'] == 'S' & 
        df['Hurricane'] == 'H'))
    )
] | df[
    (
        ((df['Location'].str.contains('- Display') & 
        df['Lancaster'] != 'L' & 
        df['Dakota'] == 'D' & 
        df['Spitfire'] == 'S' &
        df['Hurricane'] != 'H'))
    )
] | df[
    (
        ((df['Location'].str.contains('- Display') & 
        df['Lancaster'] != 'L' & 
        df['Dakota'] == 'D' & 
        df['Spitfire'] == 'SS' &
        df['Hurricane'] != 'H'))
     )]