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

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

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

自身のプラットフォーム・プログラム・データセットに対して、外部ソースを取り込むプロセスをimportと呼びます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

806閲覧

Python ImportErrorを解消したい。

Silver_GEL

総合スコア9

import

自身のプラットフォーム・プログラム・データセットに対して、外部ソースを取り込むプロセスをimportと呼びます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2022/06/09 00:48

前提

https://book-read-yoshi.hatenablog.com/entry/2022/02/13/glicko2_implementation
上記のサイトを参考にしてglicko2 ratings systemを実装しようとしていたのですが、ImportErrorが出て実行できないので質問させて頂きました。

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

cannot import name 'glicko2' from 'glicko2' (/Users/ユーザー名/glicko2/glicko2.py) File "/Users/ユーザー名/glicko2/__init__.py", line 2, in <module> from glicko2 import glicko2

該当のソースコード

python

1# ライブラリのインポート 2from glicko2 import glicko2 3import copy 4 5# プレイヤーのパラメータを設定する関数 6## 変数rating, rd, volはそれぞれrating、rating deviation、rating volatilityの初期値 7## playerオブジェクトを1つ返す 8def setPlayer(rating=1500, rd=350, vol=0.06): 9 player = glicko2.Player() 10 player.rating=rating 11 player.rd=rd 12 player.vol=vol 13 return player 14 15# 複数プレイヤーのrating等パラメータを計算する関数 16## 変数playersは複数のplayerオブジェクトを格納したリスト 17## 変数ranksは複数のplayerの対戦時における順位を格納したリスト 18## 各playerのrating等を更新してplayersリストを返す 19def calcRatings(players,ranks): 20 newPlayers=[] 21 for i, (target_player,target_rank) in enumerate(zip(players,ranks)): 22 new_target_player = copy.deepcopy(target_player) 23 ratings=[] 24 rds=[] 25 outcomes=[] 26 for j, (player, rank) in enumerate(zip(players,ranks)): 27 if not i==j: 28 ratings.append(player.rating) 29 rds.append(player.rd) 30 if rank>target_rank: 31 outcomes.append(1) 32 elif rank<target_rank: 33 outcomes.append(0) 34 elif rank==target_rank: 35 outcomes.append(0.5) 36 37 new_target_player.update_player(ratings, rds, outcomes) 38 newPlayers.append(new_target_player) 39 40 return newPlayers

試したこと

・VScordの再起動
・pip freezeでライブラリがインストールされているか確認

補足情報(FW/ツールのバージョンなど)

Python 3.6.6

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

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

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

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

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

guest

回答1

0

ベストアンサー

/Users/ユーザー名/glicko2/glicko2.pyのようにimportしたいライブラリ名と実行ファイル名が同じだと提示エラーが発生しますので、別のファイル名にしてください。

投稿2022/06/09 01:43

can110

総合スコア38262

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

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

Silver_GEL

2022/06/09 04:47

ご回答いただいた通りにファイル名を変更したら、ImportErrorは解消されましたが、また新たにモジュールが見つからないエラーに直面しました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問