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

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

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

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

Q&A

解決済

2回答

175閲覧

メソッドのオーバーライド

Phenomenon2

総合スコア40

Python 3.x

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

0グッド

0クリップ

投稿2019/01/21 04:45

編集2019/01/21 06:04

前提・実現したいこと

8000を表示したい
ここに質問の内容を詳しく書いてください。
みんなのpythonを写経しています。

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

File "<ipython-input-4-f2332a02e44f>", line 17
class cube(Prisom):
^
IndentationError: unexpected indent
エラーメッセージ

### 該当のソースコード class Prisom: def __init__(self, width, height, depth): self.width = width self.height = height self.depth = depth def content(self): return self.width*self.height*self.depth p1 = Prisom(10, 20, 30) p1.content() p2 = Prisom(50, 60, 70) p2.content() p1.height p2.height p1.height = 50 p1.content() class cube(Prisom): def __init__(self, length): self.width = self.height = self.depth = length c = Cube(20) c.content() ```ここに言語名を入力 ソースコード ### 試したこと インデントの調整 ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。

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

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

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

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

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

firedfly

2019/01/21 04:52

ソースコードはコードブロック内に書いてください。 つまり、いま「### 該当のソースコード python」と書いている```と```の間です。
azuapricot

2019/01/21 05:06

インデントが大事なPythonでインデントが消える書き方をしてしまっては 何が間違っているのかこちらではわかりません。 マークダウン <code> を使って書き直してください。
guest

回答2

0

ベストアンサー

こんにちは。

一言一句、一インデントまで
どこか違っていないか写経元と見比べてみてください。

少なくとも5か所、下にコメントして修正したように間違っています。

Python

1class Prisom(): # クラス定義なので()が必要 2 def __init__(self, width, height, depth): 3 self.width = width 4 self.height = height 5 self.depth = depth 6 7 def content(self): 8 return self.width*self.height*self.depth # 関数の中身なのでインデントを浅くする 9 10p1 = Prisom(10, 20, 30) 11p1.content() 12p2 = Prisom(50, 60, 70) 13p2.content() 14p1.height 15p2.height 16p1.height = 50 17p1.content() 18 19# Prisomクラスの中身ではないのでインデントを浅くする 20class Cube(Prisom): # クラスは大文字始まり 21 def __init__(self, length): 22 self.width = self.height = self.depth = length 23 24# Cubeクラスの中身ではないのでインデントを浅くする 25c = Cube(20) 26c.content()

投稿2019/01/21 04:57

編集2019/01/21 07:48
firedfly

総合スコア1131

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

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

Phenomenon2

2019/01/21 08:50

ちゃんと動きました!ありがとうございます!
LouiS0616

2019/01/21 08:56

@firedfly さん > クラス定義なので()が必要 無くても問題ないです。
firedfly

2019/01/21 09:35

@LouiS0616さん ご指摘ありがとうございます。 継承しないならclassの()はなくても良いのですね。
guest

0

python

1class Prisom: 2 def __init__(self, width, height, depth): 3 self.width = width 4 self.height = height 5 self.depth = depth 6 7 def content(self): 8 return self.width*self.height*self.depth 9p1 = Prisom(10, 20, 30) 10p1.content() 11p2 = Prisom(50, 60, 70) 12p2.content() 13p1.height 14p2.height 15p1.height = 50 16p1.content() 17 18# ここのインデントを下げる 19class cube(Prisom): 20 def __init__(self, length): 21 self.width = self.height = self.depth = length 22 c = Cube(20) 23 c.content()

投稿2019/01/21 06:06

_Victorique__

総合スコア1392

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問