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

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

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

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

受付中

AttributeErrorが出ます コードは引っ張ってきたものなので詳細がわかりません。

yuchin.
yuchin.

総合スコア0

Python

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

0回答

-1評価

1クリップ

719閲覧

投稿2019/10/15 15:13

編集2022/01/12 10:55

Python経験数か月のものです。

何度実行しても、エラーが出ます。
実行ファイルは以下の通りです。

Python

from edinet_xbrl.edinet_xbrl_parser import EdinetXbrlParser ## init parser parser = EdinetXbrlParser() ## parse xbrl file and get data container xbrl_file_path = r'C:\Users\Yuchi\Desktop\IRomiru_Development\TOYOTA\jpcrp020300-srs-001_E02144-000_2017-03-31_01_2017-08-04.xbrl' edinet_xbrl_object = parser.parse_file(xbrl_file_path) ## 例えば、該当年度の総資産を取ってみる key = "jppfs_cor:Assets" context_ref = "2018" current_year_assets = edinet_xbrl_object.get_data_by_context_ref(key, context_ref).get_value()

実行してもAttributeErrorがでます。
エラー文を見る限りでは、下から2行目の.get_data_by_context_ref付近でNoneを返していることが原因らしいとわかりました。

しかし、何がどうなっているのかさっぱりでわかりません。
デバッグの仕方もわからず戸惑っています。

このメソッドは以下の通りです。

Python

def get_data_by_context_ref(self, key, context_ref): val = list(filter(lambda d: d.get_context_ref() == context_ref, self.get_data_list(key))) if val: return val[0] else: return None

全文はこちらです。

質問の仕方もかなり下手だと思いますが、お願いします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

tiitoi
tiitoi

2019/10/15 15:24

なんのコードなのかわかりませんが、"set your xbrl file path" と書かれている場所には何らかのパスを指定するものではないでしょうか。
yuchin.
yuchin.

2019/10/16 00:56

すいません、実際に使ったコードを貼るのを忘れていました。
t_obara
t_obara

2019/10/16 02:57

> 付近でNoneを ではなく、きちんと実行時に表示されたエラー全文をご提示いただいた方がより適切な回答を受けられやすくなります。
hayataka2049
hayataka2049

2019/10/16 03:51 編集

ファイルがないと回答者側としては実行もデバッグもできないので、使っているファイルの入手リンクを貼ってくださいな(再配布はたぶん問題があるので、権利的に問題ない方法で)。
yuchin.
yuchin.

2019/10/16 08:48

参考コードはこちらです。 https://github\.com/BuffetCode/edinet_xbrl/blob/master/edinet_xbrl/edinet_xbrl_object\.py
tiitoi
tiitoi

2019/10/16 08:52

変数を print してデバッグしてみてください。 get_data_by_context_ref が None を返しているということは、ファイルに "jppfs_cor:Assets"、"2018" というキーが存在しないのではないでしょうか。
hayataka2049
hayataka2049

2019/10/16 08:53

私が言ったファイルとはjpcrp020300-srs-001_E02144-000_2017-03-31_01_2017-08-04\.xbrlのことです。誰にでも公開されているものであればリンクを貼ってください。
yuchin.
yuchin.

2019/10/16 09:39 編集

解決しました。ありがとうございました!

まだ回答がついていません

会員登録して回答してみよう

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Python

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