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

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

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

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

Q&A

解決済

2回答

522閲覧

pythonのClassについて

okahijiki

総合スコア404

Python 3.x

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

0グッド

0クリップ

投稿2021/06/03 01:48

classの機能の勉強を兼ねて、classを書いてみました。
がしかし、思った出力結果が出ません。アドバイス、よろしくお願いいたします。

python

1import time 2class ShoppinChain: 3 def __init__(self): 4 self.chain = [] 5 self.create_shopping(0, 0) 6 7 def create_shopping(self,fruits,meat): 8 shoppingBag={ 9 'timestamp' :time.time(), 10 'fruits':fruits, 11 'meat':meat 12 } 13 14 self.chain.append(shoppingBag) 15 16 return shoppingBag 17 18if __name__ == '__main__': 19 20 shoppinChain=ShoppinChain() 21 print(shoppinChain(chain)) #{タイムスタンプ,0,0}がprintされることを期待 22 print(shoppingChain.create_shopping('apple','pork'))#{タイムスタンプ,'fruits':'apple', 'meat':'pork'}がprintされることを期待

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

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

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

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

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

meg_

2021/06/03 02:19

> がしかし、思った出力結果が出ません。 出力結果を書いてください。
y_waiwai

2021/06/03 02:20

どういう出力結果となるんでしょう。 そして、あなたの思うような出力結果とはどういうものなんでしょうか
okahijiki

2021/06/03 02:28

質問のコードの中に #にて期待する出力を書いています。分かりにくかったですね。失礼しました。 以下の通りとなります。よろしくお願いいたします。 print(shoppinChain(chain))   #{タイムスタンプ,0,0}がprintされることを期待 print(shoppingChain.create_shopping('apple','pork'))   #{タイムスタンプ,'fruits':'apple', 'meat':'pork'}がprintされることを期待
guest

回答2

0

自己解決

chainを引数に入れてしまっていました。print(shoppingChain(chain))
メソッドの呼び出しに変更してクリアなりました。print(shoppingChain.chain)

if name == 'main':

shoppingChain=ShoppingChain() print(shoppingChain.chain)  #shoppinChain(chain) => shoppingChain.chainに変更 print(shoppingChain.create_shopping('apple','pork'))

投稿2021/06/03 04:51

okahijiki

総合スコア404

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

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

0

やりたいことを実現するためのメソッドがないですね。

python

1import time 2 3class ShoppingChain: 4 def __init__(self): 5 self.chain = [] 6 self.create_shopping(0, 0) 7 8 def create_shopping(self,fruits,meat): 9 shoppingBag={ 10 'timestamp' :time.time(), 11 'fruits':fruits, 12 'meat':meat 13 } 14 self.chain.append(shoppingBag) 15 return shoppingBag 16 17 def all_bag(self): 18 return self.chain 19 20 def latest_bag(self): 21 return self.chain[-1] 22 23shoppingChain=ShoppingChain() 24print(shoppingChain.latest_bag()) 25print(shoppingChain.create_shopping('apple','pork'))

ぐらいでしょうか。

実行結果は以下になります。

python

1>>> shoppingChain=ShoppingChain() 2>>> print(shoppingChain.latest_bag()) 3{'timestamp': 1622686964.8627515, 'fruits': 0, 'meat': 0} 4>>> print(shoppingChain.create_shopping('apple','pork')) 5{'timestamp': 1622686965.5267441, 'fruits': 'apple', 'meat': 'pork'}

投稿2021/06/03 02:23

ppaul

総合スコア24666

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

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

okahijiki

2021/06/03 04:52

ご回答ありがとうございます。 「メソッドがない」というご指摘がヒントになり、クリアできましたー。 お手数をおかけしました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問