質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

1164閲覧

Jupyter Notebookで、SyntaxError: unexpected EOF while parsingと表示される

sophfcrb

総合スコア3

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/06/10 10:11

前提・実現したいこと

初心者ですが宜しくお願いします。

マーケティングパイソン入門という書籍のP249のコードを入力していますが、エラーになります。

発生している問題・エラーメッセージ

入力したコード
def movie_scraping(movie):

エラーメッセージ
File "<ipython-input-21-1c110d9a6606>", line 1
def movie_scraping(movie):
^
SyntaxError: unexpected EOF while parsing

試したこと

Googleで、SyntaxError の事例も調べましたが、該当しそうなものはありません。

一通り見直しましたが、問題はないようです。() や、:、_ も半角で入力していますし、何が問題かわかりません。

3日ほど断続的に悩みましたが、わかりませんでした。

ご教示いただければ幸いです。

宜しくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/06/11 02:04

おはようございます。 問題文読ませていただきました。 できれば全体のコード詳細をいただくことは可能でしょうか?????‍♂️
sophfcrb

2021/06/11 07:44

一つのセルに複数行入力することで解決しました! ありがとうございました。
退会済みユーザー

退会済みユーザー

2021/06/11 10:37

なるほど。 うまくいってよかったです〜
guest

回答1

0

ベストアンサー

SyntaxErrorとはPythonの文法エラーのことです。

def movie_scraping(movie):
だけだとPythonとして成立していないので、その行のしたまで全て入力してからセルを実行してください。

たとえば、

def movie_scraping(movie): pass

でも実行できるはずです。
Pythonの文法を身につけると良いと思います。

投稿2021/06/10 10:30

fukatani

総合スコア626

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sophfcrb

2021/06/10 12:37

ありがとうございます。 ご指示の通りすべて入力しましたが、エラーは消えないままです。 入力したコードは以下です。 def movie_scraping(movie): title=movie.find('h3',{'class':'liste-item-header'}).find('a').text director=movie.find.all('p',{'class':'text-muted text-small'})[1].find_all('a')[0].text gross=movie.find_all('p',{'class':'text-muted text-small'})[2].find_all('span',{'name':'nv'})[1]['data-value'] return{'title':title,'director':director,'gross':gross} movie_scraping(movie) 該当箇所のキャプチャー画像です。 https://imgur.com/1xi17Zp すべてRunをしてみたり、1行ずつRunしてみたりしましたが、エラーのままです。 画像を見ていただけるとわかると思いますが、 def movie_scraping(movie):の前に、 In[21]: という数値が入りますが、 title=movie.find('h3',{'class':'liste-item-header'}).find('a').text からは、 In[ ]:と空欄です。 これはどうすればよいでしょうか? ご教示いただければ幸いです。
fukatani

2021/06/10 13:12 編集

一つのセルに一行ずつ入れるのではなく、一つのセルに複数行入力します。 def movie_scraping(movie): title=movie.find('h3',{'class':'liste-item-header'}).find('a').text director=movie.find.all('p',{'class':'text-muted text-small'})[1].find_all('a')[0].text gross=movie.find_all('p',{'class':'text-muted text-small'})[2].find_all('span',{'name':'nv'})[1]['data-value'] return{'title':title,'director':director,'gross':gross} 例えばここまで。でないとプログラムの途中できれて文法エラーになっちゃいます。 あとインデントも必要です。
sophfcrb

2021/06/11 07:43

ありがとうございます! 解決しました! 文法を並行して勉強します! 書籍では、「一つのセルに一行ずつ入れる」ような表現になっていたので、それに従ってしまいました。 本当にありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問