-
pythonの勉強始めたんだがエラーが出て原因が分からん
投稿日 2021年2月23日 12:44:53 (ITエンジニアのまとめ)
-
【スマホ】伊藤忠系、中古スマホの価格サイト 500機種の相場算出
-
フリーランスやってるが今年の売上高1000万円超えそうで税金がヤバイ
-
文系未経験で客先常駐it入って1年経った
-
商業高校卒で日商簿記一級とデータベーススペシャリスト持ってるけどなんか質問ある?
-
PythonとJavaとC言語使いこなせてAWSも使えるワイの市場価値w
-
C言語→C#→Java→PHP→C++→リナックスと勉強してきたけど質問ある?
-
年収450万 月残業100hの勝ち組プログラマーだけど質問あるか?
-
【IT】“推し”と学べるプログラミング学習ゲームを無償提供 女性エンジニアのニーズに対応
-
新卒派遣SEの去年の収入wwwww
-
SE(システムエンジニア)きてくれ
-
すまん、jQueryってオブジェクト指向と関係あるの?
-
WindowsもMacもGNU/Linuxも使ってきた結論を発表する。
-
JavaでStrings args[] = {} の配列の定義指定したいんだけどさ
-
文系卒25歳事務マンだが、今からpythonを本気で勉強しようと思う
-
ワイ「webサイト作りたいンーゴ」敵「じゃあHTMLとCSSとJAVAを勉強してください」ワイ「キエエエエエ」
-
Linuxしてて、Windowsする訳ないと思ったとき。
-
デスマーチの原因は「オブジェクト指向」だった
-
未経験でWebエンジニア目指すんだけどRubyかPythonどっち勉強すればいい?
-
ワイ第二新卒、SEに興味津々
-
【IT】営業はなぜ「お任せください」と約束してしまうのか
-
エンジニアJ民おる?無職だけどSES入るか迷ってる
-
WebアプリでMVCを使う理由ってなに?
-
プログラミングスクール通ったのにブラックに就職した
-
IT系って派遣多いし、勉強辛いし、変な人多いし、給料もちょっといいくらいで
-
エンジニアって何で英語使いたがるの?馬鹿なの?
-
コロナで世のフリーランス・自営業が1人負けしたな
-
オブジェクト指向意味不明すぎてワロタ
-
IT業界に入るときの注意点、SES、客先常駐、特定派遣、プロジェクト先による←この文言みつけたらやめたほうがいいってまじ?
-
ブラウザってJavascriptが読み込まれる前にフォームがデフォルトの動作で触れるんだろ?
-
趣味プログラマだけどバックエンドの言語をRuby、Go、Scalaで悩んでる
エラー文見ろとかいうクソなことは言うなよ
見てるに決まってるググって調べてるに決まってるからな分かったな
実行文↓ コードは次に貼る
C:Usersriku1OneDriveドキュメントRESEARCHPL>py test.py
Module is called
Classes and Functions are imiported
My name is bob
Human()
I’m tom. My stupid experience is suicide
Stupid
My name is mike and charge is cheaf
Human()
I’m innocense
Stupid
Traceback (most recent call last):
File “test.py”, line 31, in <module>
mp.Human.printcnt()
AttributeError: type object ‘Human’ has no attribute ‘printcnt’
test.py↓
import mypackage.module as mp
#from module import *
#exe
bob=mp.Human(“bob”)
bob.introduce()
bob.sayFuncName()
tom=mp.Stupid(“tom”,”suicide”)
tom.introduce()
tom.sayFuncName()
mike=mp.Criminal(“mike”,”cheaf”)
mike.introduce()
mike.sayFuncName()
maria=mp.Innocent(“maria”)
maria.introduce()
maria.sayFuncName()
”’
bob=Human(“bob”)
bob.introduce()
bob.sayFuncName()
tom=Stupid(“tom”,”suicide”)
tom.introduce()
tom.sayFuncName()
mike=Criminal(“mike”,”cheaf”)
mike.introduce()
mike.sayFuncName()
maria=Innocent(“maria”)
maria.introduce()
maria.sayFuncName()
”’
mp.Human.printcnt()
packagemodule.py↓
class Human():
count=0
def __init__(a,name=”none”):
a.name=name
Human.count+=1
def introduce(self):
print(“My name is {0}”.format(self.name))
def sayFuncName(self):
print(“Human()”)
@classmethod
def printcnt(cls):
print(cls.count)
class Stupid():
def __init__(self,name=”none”,experience=”A stupid thing”):
self.name=name
self.exp=experience
def introduce(self):
print(“I’m {0}. My stupid experience is {1}”.format(self.name,self.exp))
def sayFuncName(self):
print(“Stupid”)
class Criminal(Human,Stupid):
def __init__(self,name=”None”,charges=”None”):
super().__init__(name)
self.charges=charges
def introduce(self):
print(“My name is {0} and charge is {1}”.format(self.name,self.charges))
class Innocent(Stupid,Human):
def __init__(self,name=”name”):
super().__init__(name)
def introduce(self):
print(“I’m innocense”)
print(“Module is called”)
print(“Classes and Functions are imiported”)
関数定義にってこと?ちゃんと書いてるよ
呼び出しのときはインスタンスと同じようにclsにはクラス自身が自動的に入るから記述しなくてもいいはず
クラスに生えてるわけだしインスタンスからじゃなくてクラスから呼んでみれば?
Humanはクラス名だからクラスから呼び出してるはず
mp.__class__.printcnt()
では?覚えてないが
>>18
Humanの定義
class Human():
count=0
def __init__(a,name=”none”):
a.name=name
Human.count+=1
def introduce(self):
print(“My name is {0}”.format(self.name))
def sayFuncName(self):
print(“Human()”)
@classmethod
def printcnt(cls):
print(cls.count)
test.pyの呼び出し文
mp.Human.printcnt()
エラー文
Traceback (most recent call last):
File “test.py”, line 31, in <module>
mp.Human.printcnt()
AttributeError: type object ‘Human’ has no attribute ‘printcnt’
ただの仮引数だし名前は関係ないんじゃね?
一応試したけどダメだった
Classes and Functions are imiported
My name is bob
Human()
I’m tom. My stupid experience is suicide
Stupid
My name is mike and charge is cheaf
Human()
I’m innocense
Stupid
2
手元でインデント正しく直して動かしたらこうなったよ
嘘だ
できるならgistに貼るとかしてみて
たぶんインデント狂ってる気がするよ
github?
授業で使ったことあるけどよくわからん
使ってないけど一応入ってる
使うか消すかしたほうがいいと思います
mypackage/module.py をまとめて mp. 取るようにしたコード
これで実行できるからたぶんそっちのコードの何かが間違ってる
あと >>33 で貼ったコードをそのまま test2.py とかにして手元で実行したらどうなる?
処理系の問題?
これはぱっと見あってる気がするから疑ってすまんかった
>>48
草
つまりそもそも mypackage の中は完成品じゃなかったのね
>>34
VSCode の画像貼るときにエクスプローラーとかディレクトリ名も一緒に出してたらここで気づけたかも
設定できたはずだから調べてみるといいよ
ありがとう
ちなみにVScodeじゃなくてatomだぜ
ほんとだ。アイコン見てなかった
見た目そっくりだなー
>>39
ためしに合わせてみようと思ったけど rc はちょっと面倒だな
安定版入ってない?
まるっとコピって実行して動かないなら処理系かOS 依存な気がする
Mac とWandbox では動くからソースは問題ない気がする
上手くいったけどマジであほみたいなミスで申し訳ない
後学もクソもないと思う
俺がクソみたいな見落とししてただけ
mypackageの中とカレントディレクトリの両方にmodule.pyが作られてて
そのカレントディレクトリの方のmodule.pyにだけprintcnt()関数を書いてた
当然importしてるのはmypackageの方だけだから見つかるはずがない
マジですまんかった
パスのドキュメントってカタカナ入ってるのいつかバグおこしそう
俺も直したいんだけど、一回”document”に変更したらonedriveがバグったから触れないようにしてる
>>52
うろ覚えだけど新しいWindows は標準のディレクトリに関してはエクスプローラーの見た目の言語と内部の名称は別で持ってるから正しく実装されてるソフトならあまり問題は出ないかも
c:usersriku1にdocument(エクスプローラでは”ドキュメント”)があることは確認したんだけど、onedriveディレクトリもあってその中に”ドキュメント”フォルダがあるんだよな
windowsだからonedrive使ってるけど結構異端なのか?
>>56
あ。ちゃんと見てなかったわ。ぼけぼけっすね
異端と言うならソースはOneDrive じゃなくてGit で管理していこう。とかになるな。いまはGitHub のほとんどの機能が無償で使えるから触れるようになるといいよ
gitはエンジニアなら使えないとな
bitbucketはrubyの授業で使ってたが
>>59
いまは学生でもプロってか仕事と同じ道具がほぼ制限なしで使えるからやるだけ得だよ
仕事なら有償の機能やソフトさえ学生なら安価か無償で使えるし
勉強不足、調査不足、仮定不足。
引用元
管理人からひと言
あるある
Source: ITエンジニアのまとめ
続きを読む>>最新情報