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

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

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

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

Q&A

解決済

3回答

441閲覧

辞書で、入力された値に対して対応する値を返すようにしたい。

yosshi

総合スコア11

Python 3.x

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

0グッド

0クリップ

投稿2018/06/02 07:14

前提・実現したいこと

辞書で、入力された値に対して対応する値を返すようにしたい。

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

Please Enter Number110000000000 Traceback (most recent call last): File "mydict.py", line 21, in <module> print(mydict("m")) TypeError: 'dict' object is not callable

該当のソースコード

Python

1m = input("Please Enter Number") 2 3mydict = {"110000000000":1, "101000000000":2, "100100000000":3, \ 4"100010000000":4, "100001000000":5, "100000100000":6, "1000000010000":7, \ 5"100000001000":8, "100000000100":9, "100000000010":10, "100000000001":11, \ 6"011000000000":12, "010100000000":13, "010010000000":14, "010001000000":15, \ 7"010000100000":16, "010000010000":17, "010000001000":18, "010000000100":19, \ 8"010000000010":20, "010000000001":21, "001100000000":22, "001010000000":23, \ 9"001001000000":24, "001000100000":25, "001000010000":26, "001000001000":27, \ 10"001000000100":28, "001000000010":29, "001000000001":30, "000110000000":31, \ 11"000101000000":32, "000100100000":33, "000100010000":34, "000100001000":35, \ 12"000100000100":36, "000100000010":37, "000100000001":38, "000011000000":39, \ 13"000010100000":40, "000010010000":41, "000010001000":42, "000010000100":43, \ 14"000010000010":44, "000010000001":45, "000001100000":46, "000001010000":47, \ 15"000001001000":48, "000001000100":49, "000001000010":50, "000001000001":51, \ 16"000000110000":52, "000000101000":53, "000000100100":54, "000000100010":55, \ 17"000000100001":56, "000000011000":57, "000000010100":58, "000000010010":59, \ 18"000000010001":60, "000000001100":61, "000000001010":62, "000000001001":63, \ 19"000000000110":64, "000000000101":65, "000000000011":66} 20 21print(mydict("m")) 22

試したこと

inputではなくソース内でmに具体的な値を入力しましたが出てきませんでした。

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

Python3.6
Atom

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

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

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

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

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

hayataka2049

2018/06/02 07:24

申し訳ないですがpythonの書き方の基礎を理解していないと思うので、そういうレベルなら「何かを作る」前に入門書的なものを読み込んだ方が効率が良いと思います
guest

回答3

0

ベストアンサー

mydict("m") -> =mydict[m]です。
Python チュートリアルなどで基礎を学んでください。

Python

1mydict = {"110000000000":1} 2m = input("Please Enter Number") 3print(mydict("m"))# TypeError: 'dict' object is not callable 4print(mydict[m]) # 1

投稿2018/06/02 07:22

can110

総合スコア38262

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

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

yosshi

2018/06/02 07:23

ありがとうございます。 そうします。
guest

0

単純な文法ミス。

mydict["m"]

投稿2018/06/02 07:20

KojiDoi

総合スコア13671

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

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

0

単純に使い方を誤っているだけかと。mydict("m")mydict[m]
『何がわからないかわからない』状態なら、入門書を買って体系的に勉強することを強くお勧めします。

投稿2018/06/02 07:18

編集2018/06/02 07:19
LouiS0616

総合スコア35660

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問