★当スレにRubyのソースコード類を書くことを禁ず
☆Ruby等、Pythonではないプログラミング言語での回答類を書くことも禁ず
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。
エラーを解決したいときはエラー表示や環境(バージョン/IDEまたはcommand line/OS)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで
前スレ
くだすれPython(超初心者用) その40
http://mevius.5ch.net/test/read.cgi/tech/1542874174/
◆PythonのHome Page
http://www.python.org/
◆まとめwiki
ttp://python.rdy.jp/
◆Pythonのソースコードをそのまま5ちゃんにコピペすると
インデントが崩れるので
こういうところ↓にはってきてください
ttp://ideone.com/ Pythonするにはぷち手間あるのがめんどうかなぁ
ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/ まずまずシンプル。
ttp://dpaste.com/ とてもシンプル。消えるまでの日数を長めに指定しる。
ttps://jupyter.org/try (旧try.jupyter.org)ちょっとめんどうそう
ttps://ja.osdn.net/pastebin/ ログイン必須になりやがった(゚Д゚#)
−−−−天麩羅ここまで−−−−
くだすれPython(超初心者用) その41【Ruby禁止】
レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん
2019/02/04(月) 21:22:10.08ID:9MrdxUVg851デフォルトの名無しさん
2019/03/14(木) 03:27:13.64ID:4WTRjlYm 相手にするからつけあがるんだよ
852デフォルトの名無しさん
2019/03/14(木) 03:37:18.44ID:nL4uJ2zh 終わりのないのが『終わり』
それが『RWBY』
それが『RWBY』
853デフォルトの名無しさん
2019/03/14(木) 08:25:07.71ID:/JPtJCUD a = 'hoge'
type(a)
これを実行すると<class 'str'>が表示される
これは変数aが指してるオブジェクトの型がstr型という意味でいいんだよね
一方で、文字列はシーケンス型でもあるからインデックスでアクセスしたり、スライスしたり出来る
この文字列がシーケンス型というのはpython上でどうやって確認するんや
type(a)
これを実行すると<class 'str'>が表示される
これは変数aが指してるオブジェクトの型がstr型という意味でいいんだよね
一方で、文字列はシーケンス型でもあるからインデックスでアクセスしたり、スライスしたり出来る
この文字列がシーケンス型というのはpython上でどうやって確認するんや
854デフォルトの名無しさん
2019/03/14(木) 08:34:53.42ID:lGFaI2Uv >>853
シーケンス型の実体は存在しない
失敗しないことを天に祈りつつ勇敢にforに投入する、がPythonの思想的には正しい
厳密にやりたいなら型アノテーションでSequenceあるけど、型アノテーションなんか誰も使ってない
シーケンス型の実体は存在しない
失敗しないことを天に祈りつつ勇敢にforに投入する、がPythonの思想的には正しい
厳密にやりたいなら型アノテーションでSequenceあるけど、型アノテーションなんか誰も使ってない
855デフォルトの名無しさん
2019/03/14(木) 10:12:27.31ID:QThoqyRe >>853
hasattr(a, ‘__iter__’)
Pythonではシーケンス型の事をiterableなオブジェクトという
forにiterableを渡すと__iter__()が呼ばれるのでこれの有無を確認すれば分かる
hasattr(a, ‘__iter__’)
Pythonではシーケンス型の事をiterableなオブジェクトという
forにiterableを渡すと__iter__()が呼ばれるのでこれの有無を確認すれば分かる
856デフォルトの名無しさん
2019/03/14(木) 10:14:27.51ID:QThoqyRe857デフォルトの名無しさん
2019/03/14(木) 11:06:23.42ID:/JPtJCUD レスありがとう
俺はstr型はシーケンス型を継承してるから、シーケンス型のようにも振る舞うと勝手に思ってたけど違うのね
str型はiterableな属性を持ってるから、for文に渡して繰り返しの処理が出来るというのはわかった
それなら、str型がsequenceableな属性を持ってるからスライスやインデックスのアクセスが出来るというのなら理解できるんだけど、シーケンス型で属性じゃないのよね
なんか混乱してきたわ(´・ω・`)
俺はstr型はシーケンス型を継承してるから、シーケンス型のようにも振る舞うと勝手に思ってたけど違うのね
str型はiterableな属性を持ってるから、for文に渡して繰り返しの処理が出来るというのはわかった
それなら、str型がsequenceableな属性を持ってるからスライスやインデックスのアクセスが出来るというのなら理解できるんだけど、シーケンス型で属性じゃないのよね
なんか混乱してきたわ(´・ω・`)
858デフォルトの名無しさん
2019/03/14(木) 11:16:27.87ID:r+Z4K3kn >>857
IterableもSequenceと同じく、クラスが満たすべき性質がドキュメント上や型アノテーションで定義されているだけの実体のない型だ
Pythonではそういう実体のない(ドキュメントや型アノテーションにしか登場しない)仮想的な型のことを一般にプロトコルと呼ぶ
Javaのinterfaceに近い概念だが、interfaceとは違ってオブジェクトに付随する型としての実体を持たないという点が異なる
IterableもSequenceと同じく、クラスが満たすべき性質がドキュメント上や型アノテーションで定義されているだけの実体のない型だ
Pythonではそういう実体のない(ドキュメントや型アノテーションにしか登場しない)仮想的な型のことを一般にプロトコルと呼ぶ
Javaのinterfaceに近い概念だが、interfaceとは違ってオブジェクトに付随する型としての実体を持たないという点が異なる
859デフォルトの名無しさん
2019/03/14(木) 11:26:52.83ID:RE7f17De >>857
pythonの場合、forに渡せるとかの機能は単に__xxx__という名前の特殊メソッドが実装されているかどうかで決まる
pythonの場合、forに渡せるとかの機能は単に__xxx__という名前の特殊メソッドが実装されているかどうかで決まる
860デフォルトの名無しさん
2019/03/14(木) 11:41:55.90ID:jNBQt8MR861デフォルトの名無しさん
2019/03/14(木) 12:41:19.77ID:r+Z4K3kn >>860
だからそう言ってるつもりだが
だからそう言ってるつもりだが
862デフォルトの名無しさん
2019/03/14(木) 12:47:55.74ID:YiVNNcx0 じゃあjavaよりgoのが近いんじゃ?
863デフォルトの名無しさん
2019/03/14(木) 13:23:53.72ID:jNBQt8MR864847
2019/03/14(木) 13:28:05.85ID:tsxAqnNH 参考までに、Ruby では、Array -> Enumerable (子 -> 親)
自クラスに、each を定義して、Enumerable モジュールをinclude すれば、
Enumerable のすべてのメソッドが使える(mix-in)(内部イテレータ)
Enumerable とは繰り返しを行なうクラスのための Mix-in。
このモジュールの メソッドは全て、eachを用いて定義されているので、
インクルード するクラスには、eachが定義されていなければなりません
each を定義しない場合は、Enumerator というラッパークラスで、Enumerable のメソッドが使える(外部イテレータ)
外部イテレータは、Enumerator.next, rewind などで繰り返しを進めたり・巻き戻したり、制御できる
mix-in とは継承ではないけど、呼び出される関数探索の継承チェーンに割り込む機能。
Java のinterface みたいなもの。
Duck Typing と言って、そのメソッドに反応するかどうか
子 -> mix-in -> 親
自クラスに、each を定義して、Enumerable モジュールをinclude すれば、
Enumerable のすべてのメソッドが使える(mix-in)(内部イテレータ)
Enumerable とは繰り返しを行なうクラスのための Mix-in。
このモジュールの メソッドは全て、eachを用いて定義されているので、
インクルード するクラスには、eachが定義されていなければなりません
each を定義しない場合は、Enumerator というラッパークラスで、Enumerable のメソッドが使える(外部イテレータ)
外部イテレータは、Enumerator.next, rewind などで繰り返しを進めたり・巻き戻したり、制御できる
mix-in とは継承ではないけど、呼び出される関数探索の継承チェーンに割り込む機能。
Java のinterface みたいなもの。
Duck Typing と言って、そのメソッドに反応するかどうか
子 -> mix-in -> 親
865デフォルトの名無しさん
2019/03/14(木) 13:31:58.94ID:r+Z4K3kn >>862
goのは型が明示的にinterfaceを実装していなくても必要なメソッドがあれば受け入れるstructual subtypingという考え方
Pythonは duck typing なので本来はそれに近いのだが、型ヒントがstructual subtypingではなく明示的にクラスがインターフェイスを継承する必要がある
よってpythonにおいては型ヒントを考慮すればgoよりJavaに近い
goのは型が明示的にinterfaceを実装していなくても必要なメソッドがあれば受け入れるstructual subtypingという考え方
Pythonは duck typing なので本来はそれに近いのだが、型ヒントがstructual subtypingではなく明示的にクラスがインターフェイスを継承する必要がある
よってpythonにおいては型ヒントを考慮すればgoよりJavaに近い
866デフォルトの名無しさん
2019/03/14(木) 13:52:11.73ID:q8OuUl64 rubyをdisる訳じゃないけど
初心者でpython学習し始めたところなら
rubyと比べない方が良いよ
覚えることが増えるだけでメリット無いから
初心者でpython学習し始めたところなら
rubyと比べない方が良いよ
覚えることが増えるだけでメリット無いから
867デフォルトの名無しさん
2019/03/14(木) 13:56:28.26ID:1qhaQ5mP これから試験受けるんだが落ちそう
868デフォルトの名無しさん
2019/03/14(木) 15:34:12.56ID:1qhaQ5mP うかったんご
869デフォルトの名無しさん
2019/03/14(木) 16:11:42.58ID:NTHRrjbg おめでと
870デフォルトの名無しさん
2019/03/14(木) 16:56:04.19ID:lcXwIoo8 型アノテーションは、関数の出入り口と、
なんの型が分かりにくいローカル変数には
つける。
付けることで補完が強化される場合と、
しばしば補完を逆に妨げる場合があるので、
うまく折り合いを付けて付記する感じやな。
なんの型が分かりにくいローカル変数には
つける。
付けることで補完が強化される場合と、
しばしば補完を逆に妨げる場合があるので、
うまく折り合いを付けて付記する感じやな。
871デフォルトの名無しさん
2019/03/14(木) 18:13:57.50ID:1qhaQ5mP あざます
872デフォルトの名無しさん
2019/03/14(木) 18:55:16.95ID:cYjqrp0Z >>844
ありがとうございました
ありがとうございました
873デフォルトの名無しさん
2019/03/14(木) 19:44:05.42ID:prpM2HGX 最適化には何の関係もないのよね型指定
874デフォルトの名無しさん
2019/03/14(木) 19:58:50.87ID:r+Z4K3kn >>873
むしろソースコードのパースの負荷が増えて僅かに遅くなるだろうな
むしろソースコードのパースの負荷が増えて僅かに遅くなるだろうな
875デフォルトの名無しさん
2019/03/14(木) 21:29:10.91ID:DYXE/n/d Ruby ←まず名前がダサい
Python ←カッコイイ
Python ←カッコイイ
876デフォルトの名無しさん
2019/03/14(木) 21:37:41.09ID:Cgb2oqJn pythonだけ見るとカッコイイけど元はモンティ・パイソンなんだよな
877デフォルトの名無しさん
2019/03/14(木) 21:48:50.71ID:nL4uJ2zh878デフォルトの名無しさん
2019/03/14(木) 21:50:35.71ID:nL4uJ2zh879デフォルトの名無しさん
2019/03/15(金) 08:57:12.14ID:Oo+XcCcU pythonのコーディングに少しづつ慣れてきたせいで,のあとに半角スペースを挿入してしまうクセが付いてしまいました
簡単なテストのためダミーでcsv作る際に,後ろにに半角スペース入れるせいでcsvDictReaderで読んでkey指定したときにkeyErrorが出てしまい数十分ですが悩んでしまいました
今後はskipinitialspaceをtrueにして使います
ありがとうございました
簡単なテストのためダミーでcsv作る際に,後ろにに半角スペース入れるせいでcsvDictReaderで読んでkey指定したときにkeyErrorが出てしまい数十分ですが悩んでしまいました
今後はskipinitialspaceをtrueにして使います
ありがとうございました
880デフォルトの名無しさん
2019/03/15(金) 09:55:37.05ID:LNWMUSed pythonに限らずほぼ全てのプログラミング言語でそういう癖が付くかと思うしそもそも欧米圏の言語でも全てそうだがお前何か言いがかりでも付けたいの?
881デフォルトの名無しさん
2019/03/15(金) 12:49:50.87ID:zt0rtKct python はビジュアル系スタジオみたいな統合環境は無いの?
882デフォルトの名無しさん
2019/03/15(金) 12:51:57.85ID:EeWTkT4V ビジュアル系スタジオちょっと好き
883デフォルトの名無しさん
2019/03/15(金) 13:13:04.71ID:88mLDigX >>881 あんたも好きね。 チャーミングなおっぱいがあるよ。 PyCharm
884デフォルトの名無しさん
2019/03/15(金) 13:25:05.27ID:1iRTQcZ+ pycharm ceがタダで使えるのは助かるなぁ
885デフォルトの名無しさん
2019/03/15(金) 14:18:08.50ID:SEjqglYP 最新鋭の望遠鏡で使われてる
タイパンがカッコ良かった
UKシュミット望遠鏡自体は数十年の年季もんだけど
タイパン付けると最新鋭に変身してた
タイパンがカッコ良かった
UKシュミット望遠鏡自体は数十年の年季もんだけど
タイパン付けると最新鋭に変身してた
886デフォルトの名無しさん
2019/03/15(金) 14:21:07.58ID:SEjqglYP887デフォルトの名無しさん
2019/03/15(金) 18:27:46.26ID:HkVkKV93 オブジェクトをフォルダと考えるのは間違いなのですか
888デフォルトの名無しさん
2019/03/15(金) 18:38:30.61ID:PFD13TRH 考えてもいいぜ
889デフォルトの名無しさん
2019/03/15(金) 18:58:10.65ID:8Z2zh4Or Python初心者です。
scikit-learnで学習した学習結果を他の言語(C#)で利用したいと考えてます。
が、どうしたらいいのかわかりません。
どなたかご教授願います。
scikit-learnで学習した学習結果を他の言語(C#)で利用したいと考えてます。
が、どうしたらいいのかわかりません。
どなたかご教授願います。
890デフォルトの名無しさん
2019/03/15(金) 23:30:46.48ID:/jMwhNVt 最終的に何をしたいのかをもう少し具体的に書いたほうが良いと思う
個人的に言語は統一した方が楽と思うよ
個人的に言語は統一した方が楽と思うよ
891デフォルトの名無しさん
2019/03/15(金) 23:48:43.20ID:8Z2zh4Or scikit-learnでじゃんけんの人間の癖を学習させて、
そこそこの制度で予想できるようになったので、それをスマホアプリとして公開したいという欲が湧いてきました。
Pythonではスマホアプリの開発は難しそうなのでその学習結果をC#に移植したいと考えてるのですが、
そういう事は可能ですか?
そこそこの制度で予想できるようになったので、それをスマホアプリとして公開したいという欲が湧いてきました。
Pythonではスマホアプリの開発は難しそうなのでその学習結果をC#に移植したいと考えてるのですが、
そういう事は可能ですか?
892デフォルトの名無しさん
2019/03/16(土) 00:53:29.77ID:lomlnXfv !?
893デフォルトの名無しさん
2019/03/16(土) 06:12:09.99ID:MtyeuN+5 可能
pythonに不可能は無い
pythonに不可能は無い
894デフォルトの名無しさん
2019/03/16(土) 10:56:59.10ID:Eza8KstC >>891 iOS なら、Pythonista で簡単にアプリを作れるぞ。
Androidでもできるだろ。
そもそもiOSだと、C#じゃなくObjective-C やSwift になるからかなり垣根は高いぞ。
因みにPythonista からはObjective-C のライブラリを使うこともできるし自由に呼び出すこともできる。
なお、scikit-learn そのものをPythonistaで使うことはできない。 numpy は使えるが、scipy がインストールできない。
Androidでもできるだろ。
そもそもiOSだと、C#じゃなくObjective-C やSwift になるからかなり垣根は高いぞ。
因みにPythonista からはObjective-C のライブラリを使うこともできるし自由に呼び出すこともできる。
なお、scikit-learn そのものをPythonistaで使うことはできない。 numpy は使えるが、scipy がインストールできない。
895デフォルトの名無しさん
2019/03/16(土) 11:10:13.00ID:INaBYg0f いやC#つってんだからUnityで作るんだろJK
あれゲーム作るの簡単だからいいよな〜
あれゲーム作るの簡単だからいいよな〜
896デフォルトの名無しさん
2019/03/16(土) 11:18:22.65ID:mXGVm9Ao897デフォルトの名無しさん
2019/03/16(土) 11:20:10.33ID:mXGVm9Ao Unityって物理エンジンですよね?
scikit-learnのように機械学習もできるのですか?
scikit-learnのように機械学習もできるのですか?
898デフォルトの名無しさん
2019/03/16(土) 11:31:31.62ID:Slvebd/s 学習機能は通信を介したサービスとして提供したら
scikit-learnはサーバー側で動いてりゃ良いんだし
scikit-learnはサーバー側で動いてりゃ良いんだし
899デフォルトの名無しさん
2019/03/16(土) 11:44:44.11ID:+8YpvTs6900デフォルトの名無しさん
2019/03/16(土) 11:48:05.65ID:d/4KgbH7 じゃんけんするのにサーバーと通信するのは草
でもいまどきそんなもんなのか?
でもいまどきそんなもんなのか?
901デフォルトの名無しさん
2019/03/16(土) 11:52:33.53ID:+8YpvTs6 さすがに半分テストアプリだと思うけど、既に超敷居が高い
902デフォルトの名無しさん
2019/03/16(土) 11:53:42.85ID:mXGVm9Ao 機械学習の移植は難しいものなんですね。
サーバーにPythonを置けばいいのですね。
ありがとうございます。
サーバーにPythonを置けばいいのですね。
ありがとうございます。
903デフォルトの名無しさん
2019/03/16(土) 11:58:21.60ID:eO5a7zjy 学習からC#でやり直すわけにはいかないの?
オブジェクト指向の機械学習ライブラリなんて言語によらず使い方似てるからそっちのが楽じゃない?
オブジェクト指向の機械学習ライブラリなんて言語によらず使い方似てるからそっちのが楽じゃない?
904デフォルトの名無しさん
2019/03/16(土) 12:01:14.33ID:eO5a7zjy 「Unity 機械学習」
でググってもいろいろでてくるし
でググってもいろいろでてくるし
905デフォルトの名無しさん
2019/03/16(土) 12:05:08.07ID:mXGVm9Ao C#で機械学習ですか!
scikit-learnがすごく簡単だったのでscikit-learnで出来たらと考えてました。
使い方が似ているのならその選択も検討してみます。
ありがとうございます。
scikit-learnがすごく簡単だったのでscikit-learnで出来たらと考えてました。
使い方が似ているのならその選択も検討してみます。
ありがとうございます。
906デフォルトの名無しさん
2019/03/16(土) 12:12:34.74ID:Eza8KstC せっかくPython の勉強を始めたんだから、Python でゲーム開発までやれば良いのに、じゃんけんアプリなんて簡単でしょ。
どんなPython ゲームライブラリが適切なのかは知らないけど。
どんなPython ゲームライブラリが適切なのかは知らないけど。
907デフォルトの名無しさん
2019/03/16(土) 12:14:27.10ID:SlIDoTSl selfについて何度も聞いてるカスなんですが、まだ意味が理解できてません
このコードの場合どういった意味を持ちますか?
インスタンス自身と言われてもイメージがつきません
記憶領域という説明も見たことがありますが、これはどういう意味でしょうか
http://codepad.org/rOzHcmIX
class apple:
def __init__(self,price,weight):
self.p = price
self.w = weight
def print(self):
print(self.p)
print(self.w)
s = apple("100yen","300g")
s2 = apple("1000yen","1000g")
s.print()
s2.print()
このコードの場合どういった意味を持ちますか?
インスタンス自身と言われてもイメージがつきません
記憶領域という説明も見たことがありますが、これはどういう意味でしょうか
http://codepad.org/rOzHcmIX
class apple:
def __init__(self,price,weight):
self.p = price
self.w = weight
def print(self):
print(self.p)
print(self.w)
s = apple("100yen","300g")
s2 = apple("1000yen","1000g")
s.print()
s2.print()
908デフォルトの名無しさん
2019/03/16(土) 12:15:53.61ID:SlIDoTSl 訂正です
×このコードの場合どういった意味を持ちますか?
○このコードのようにselfを使うメリットはなんですか?
×このコードの場合どういった意味を持ちますか?
○このコードのようにselfを使うメリットはなんですか?
909デフォルトの名無しさん
2019/03/16(土) 12:24:28.76ID:Eza8KstC Android ならQpython にはKivy がバンドルされてるらしいし、kivy で良いんじゃないの?
910デフォルトの名無しさん
2019/03/16(土) 12:29:58.42ID:+8YpvTs6 >>907
コードが変なので修正した
http://codepad.org/L0lJBrzg
メモリ上のデータをイメージできれば簡単に理解できるんだけどね
インスタンスとか言っても逆に分からんだろうな
https://brain.cc.kogakuin.ac.jp/~kanamaru/lecture/C++2/09/09-02.html
http://cpp.aquariuscode.com/class-memory-layout
コードが変なので修正した
http://codepad.org/L0lJBrzg
メモリ上のデータをイメージできれば簡単に理解できるんだけどね
インスタンスとか言っても逆に分からんだろうな
https://brain.cc.kogakuin.ac.jp/~kanamaru/lecture/C++2/09/09-02.html
http://cpp.aquariuscode.com/class-memory-layout
911デフォルトの名無しさん
2019/03/16(土) 12:38:34.92ID:mXGVm9Ao >>906
Pythonは機械学習やディープラーニングを始めたくて最近勉強し始めました。
勉強してくうちにアプリを公開したいと思うようになった次第ですw
GUIはC#の方が簡単そうなので2つの言語をうまく連携できればと思ったのですが、
難しいようですね。
もちろんPythonはこれからも使いたいと思います!
Pythonは機械学習やディープラーニングを始めたくて最近勉強し始めました。
勉強してくうちにアプリを公開したいと思うようになった次第ですw
GUIはC#の方が簡単そうなので2つの言語をうまく連携できればと思ったのですが、
難しいようですね。
もちろんPythonはこれからも使いたいと思います!
912デフォルトの名無しさん
2019/03/16(土) 12:58:16.11ID:Cc4OYSLe >>907
まず自分でクラス書く前にライブラリでクラス使ってみたらわかるだろ
pandasのチュートリアルとか何でもいいけどインスタンス作ってメソッド使ってインスタンス変数参照したらself何なのかも見えてくる メモリ上の何とかなんか意識しなくていい
まず自分でクラス書く前にライブラリでクラス使ってみたらわかるだろ
pandasのチュートリアルとか何でもいいけどインスタンス作ってメソッド使ってインスタンス変数参照したらself何なのかも見えてくる メモリ上の何とかなんか意識しなくていい
913デフォルトの名無しさん
2019/03/16(土) 13:11:48.23ID:eO5a7zjy 「入門python3」を一冊買ってやろう。
914デフォルトの名無しさん
2019/03/16(土) 18:05:24.13ID:fe/BGgDT vscodeとintellijのpython機能で試したのですが
awsのsdk boto3でインスタンス化したクライアントに対してオートコンプリートを働くようにするのってどうしたらよいでしょうか?
以下のようにして変数cを作っても、変数cをBaseClient型としか認識してくれないので、s3関連のメソッドがオートコンプリートで出てきてくれません。
c = boto3.client('s3')
もちろん実行時はちゃんとs3の型になるのでコードを動かす事は出来るのですが、オートコンプリート無しはちょっときついので、なんとかして出す方法があれば教えてください。
awsのsdk boto3でインスタンス化したクライアントに対してオートコンプリートを働くようにするのってどうしたらよいでしょうか?
以下のようにして変数cを作っても、変数cをBaseClient型としか認識してくれないので、s3関連のメソッドがオートコンプリートで出てきてくれません。
c = boto3.client('s3')
もちろん実行時はちゃんとs3の型になるのでコードを動かす事は出来るのですが、オートコンプリート無しはちょっときついので、なんとかして出す方法があれば教えてください。
915デフォルトの名無しさん
2019/03/16(土) 18:30:45.43ID:SlIDoTSl916デフォルトの名無しさん
2019/03/16(土) 18:36:03.43ID:YxxaJZky >>914
型アノテーションで変数の型を明示的に指定する
型アノテーションで変数の型を明示的に指定する
917デフォルトの名無しさん
2019/03/16(土) 18:53:42.59ID:+8YpvTs6 >>915
・インスタンスを作成
・メモリ領域を確保
・self=インスタンス
この辺はもう全部イコールで考えても構わない
例外的にstaticやglobalでインスタンス外にメモリ領域を確保することも出来るけど
図で言うとこんな感じ
https://i.imgur.com/gNRp6HQ.png
・インスタンスを作成
・メモリ領域を確保
・self=インスタンス
この辺はもう全部イコールで考えても構わない
例外的にstaticやglobalでインスタンス外にメモリ領域を確保することも出来るけど
図で言うとこんな感じ
https://i.imgur.com/gNRp6HQ.png
918デフォルトの名無しさん
2019/03/16(土) 19:28:51.03ID:sQCNGdE3 >>915
インスタンスを作った時点でメモリが確保は良い。でも確保にselfは関係ない
内部だと__init__より前に__new__が呼び出され、そこでメモリ確保が行われる
語弊を恐れずに言ってしまえば、selfはそのメモリがどこか位置を示すものだ
メリットがどうとかじゃない、sとs2は同じ型だが別物だろう、それを区別するために必要なんだ
インスタンスを作った時点でメモリが確保は良い。でも確保にselfは関係ない
内部だと__init__より前に__new__が呼び出され、そこでメモリ確保が行われる
語弊を恐れずに言ってしまえば、selfはそのメモリがどこか位置を示すものだ
メリットがどうとかじゃない、sとs2は同じ型だが別物だろう、それを区別するために必要なんだ
919デフォルトの名無しさん
2019/03/16(土) 19:33:23.24ID:1feDyboY920デフォルトの名無しさん
2019/03/16(土) 20:16:22.51ID:SlIDoTSl >>917
>>918
ありがとうございます
あれ?これってもしかしてポインタというやつなんですか?pythonの場合そういった呼ばれ方は見たことがありませんが
https://wa3.i-3-i.info/word12815.html
>>918
ありがとうございます
あれ?これってもしかしてポインタというやつなんですか?pythonの場合そういった呼ばれ方は見たことがありませんが
https://wa3.i-3-i.info/word12815.html
921デフォルトの名無しさん
2019/03/16(土) 20:31:38.84ID:INaBYg0f 山椒
922デフォルトの名無しさん
2019/03/16(土) 21:47:12.09ID:+8YpvTs6 >>920
似たようなもんで「参照」
ポインタと参照の違い
https://qiita.com/agate-pris/items/05948b7d33f3e88b8967
http://cocodrips.hateblo.jp/entry/2015/12/08/221722
メモリ上にインスタンスが展開されてるイメージができれば大体ok
似たようなもんで「参照」
ポインタと参照の違い
https://qiita.com/agate-pris/items/05948b7d33f3e88b8967
http://cocodrips.hateblo.jp/entry/2015/12/08/221722
メモリ上にインスタンスが展開されてるイメージができれば大体ok
923デフォルトの名無しさん
2019/03/16(土) 22:04:48.14ID:/h3gEsxd C言語使わない人にその教え方はどうなのよ。悪いことは言わないから「入門python3」を買って一通りやろう。
924デフォルトの名無しさん
2019/03/16(土) 22:11:31.40ID:431M+yCA 入門python3ってあんまりレビューが良くないね
925847
2019/03/16(土) 23:16:52.98ID:1E15fsAJ インスタンスや、self がわからないの?
オブジェクト指向の基本だよ
self は、そのインスタンスを指す。
Ruby では、
class Cat
def initialize( name, weight )
@name = name
@weight = weight
end
end
p bob = Cat.new( "bob", 5 )
p alice = Cat.new( "alice", 4 )
new で、Cat というひな形から、各インスタンスを作る(実体化)
bob は、<Cat: @name="bob", @weight=5>
alice は、<Cat: @name="alice", @weight=4>
Rubyの、@name = name が、Python では、self.name = name になる。
Rubyではインスタンス変数は、@ で表すけど、pythonではself を付ける
インスタンス変数とは、各インスタンスで異なる部分。
一方、クラス変数とは、そのクラス(すべてのインスタンス)で共通の部分。
Rubyでは一々、selfを付けなくても良いように、Rubyの実装を、かなり頑張って作っている。
self.name よりも、@name の方がわかりやすいから!
オブジェクト指向・関数型は、Rubyで学んだ方がよい。
Python, JavaScript, Kotlin にも応用できるから
オブジェクト指向の基本だよ
self は、そのインスタンスを指す。
Ruby では、
class Cat
def initialize( name, weight )
@name = name
@weight = weight
end
end
p bob = Cat.new( "bob", 5 )
p alice = Cat.new( "alice", 4 )
new で、Cat というひな形から、各インスタンスを作る(実体化)
bob は、<Cat: @name="bob", @weight=5>
alice は、<Cat: @name="alice", @weight=4>
Rubyの、@name = name が、Python では、self.name = name になる。
Rubyではインスタンス変数は、@ で表すけど、pythonではself を付ける
インスタンス変数とは、各インスタンスで異なる部分。
一方、クラス変数とは、そのクラス(すべてのインスタンス)で共通の部分。
Rubyでは一々、selfを付けなくても良いように、Rubyの実装を、かなり頑張って作っている。
self.name よりも、@name の方がわかりやすいから!
オブジェクト指向・関数型は、Rubyで学んだ方がよい。
Python, JavaScript, Kotlin にも応用できるから
926デフォルトの名無しさん
2019/03/16(土) 23:27:14.53ID:DylECkfT >>925
> self.name よりも、@name の方がわかりやすいから!
アピールポイントそれだけ?
@がメンバ変数を表すなんて知らなきゃ分からんし、直感でも何となく察せるself.〜の方が分かりやすいと思うが
> self.name よりも、@name の方がわかりやすいから!
アピールポイントそれだけ?
@がメンバ変数を表すなんて知らなきゃ分からんし、直感でも何となく察せるself.〜の方が分かりやすいと思うが
927デフォルトの名無しさん
2019/03/16(土) 23:28:24.96ID:1G1aklbm 自分もPython初心者だけど
ttps://www.python-izm.com
ここのサイトめちゃくちゃわかり易かったので載せときたす。
ttps://www.python-izm.com
ここのサイトめちゃくちゃわかり易かったので載せときたす。
928デフォルトの名無しさん
2019/03/16(土) 23:35:31.32ID:8PxPizsB929デフォルトの名無しさん
2019/03/17(日) 00:17:39.16ID:oRKycfKe >>925
なんでJavaないの? 理解できなかったの?
なんでJavaないの? 理解できなかったの?
930デフォルトの名無しさん
2019/03/17(日) 01:42:26.25ID:ttbbgHOa chromeの拡張機能を自動操作することは可能ですか?
931デフォルトの名無しさん
2019/03/17(日) 02:01:28.71ID:QLspzkYx >>937 ちらっとのぞいてみたが、目次が良くないね。
最初から順を追って進めて行く人にとっては良いかもしれないけど。
最初から順を追って進めて行く人にとっては良いかもしれないけど。
932デフォルトの名無しさん
2019/03/17(日) 02:05:09.07ID:nMZPqZIX 937に期待
933デフォルトの名無しさん
2019/03/17(日) 02:05:36.23ID:pyRBRMBz >>924
どこのレビュー?Amazon見る限りは良さそうだけど…
どこのレビュー?Amazon見る限りは良さそうだけど…
934デフォルトの名無しさん
2019/03/17(日) 05:27:50.39ID:nAjwMdDd >>922
ありがとう
ありがとう
935デフォルトの名無しさん
2019/03/17(日) 07:33:20.83ID:nAjwMdDd https://wa3.i-3-i.info/word16070.html
こういう説明がわかりやすいのに、、、
こういう説明がわかりやすいのに、、、
936デフォルトの名無しさん
2019/03/17(日) 07:39:55.25ID:nAjwMdDd 変数がメモリ上にあって、その変数の場所を渡すのが参照わたし=self
ということでいいんですか?
ということでいいんですか?
937デフォルトの名無しさん
2019/03/17(日) 08:24:23.53ID:HhaziKqA 参照渡しがどうこうはとりあえず忘れろ
今までの流れには全く関係ないから
今までの流れには全く関係ないから
938デフォルトの名無しさん
2019/03/17(日) 08:25:15.86ID:HhaziKqA 今までの流れってのはselfの話な
939デフォルトの名無しさん
2019/03/17(日) 08:37:05.58ID:Udd8jK7+940デフォルトの名無しさん
2019/03/17(日) 08:41:05.15ID:nAjwMdDd >>937
えっ?関係ないのですか、、、
えっ?関係ないのですか、、、
941デフォルトの名無しさん
2019/03/17(日) 11:18:35.50ID:oeP02mQD Pythonではすべてが値渡しだ
そしてすべての値が所謂参照型だってだけ
そしてすべての値が所謂参照型だってだけ
942デフォルトの名無しさん
2019/03/17(日) 11:41:11.52ID:R43k4iG5 内部的に参照渡しみたいなもんなんだからメモリの概念教えないと永久に理解できなく内科?
943デフォルトの名無しさん
2019/03/17(日) 11:57:02.77ID:X1cUtWYO 参照渡しってどこが
944デフォルトの名無しさん
2019/03/17(日) 12:00:59.08ID:X1cUtWYO 参照渡しについて
C#のrefみたいなのを参照渡しと呼ぶ勢と
C++のhoge&みたいなのを参照渡しと呼ぶ勢がいるので
ややこしい
C#のrefみたいなのを参照渡しと呼ぶ勢と
C++のhoge&みたいなのを参照渡しと呼ぶ勢がいるので
ややこしい
945デフォルトの名無しさん
2019/03/17(日) 12:08:17.15ID:iuUxAYpH 一子相伝究極奥義「参照渡し」
946デフォルトの名無しさん
2019/03/17(日) 12:11:50.92ID:Udd8jK7+ 値渡しと参照渡しと参照の値渡しがあるんだっけ
947デフォルトの名無しさん
2019/03/17(日) 12:12:20.76ID:nAjwMdDd >>941
値渡しということはコピーということですかね
値渡しということはコピーということですかね
948デフォルトの名無しさん
2019/03/17(日) 12:14:55.90ID:7j/Zhhp5 大地参照も変換できない糞スマホの糞IME
949デフォルトの名無しさん
2019/03/17(日) 12:15:53.60ID:vfP8HMqf 大地讃頌
950デフォルトの名無しさん
2019/03/17(日) 12:21:40.62ID:XvGPMByn951デフォルトの名無しさん
2019/03/17(日) 15:27:46.05ID:9wVKFPUf >>935-936
いやさ、記憶領域の話をし出すから皆メモリの話をした訳だけど
ポインタとか言い出すと、Python上にはポインタは無いけど
CPython等の実装は変数が全てポインタで実体に対する参照なの
参照渡しというと普通は変数に対する参照を言うので関係ないし
変数が入れ物とはC言語などのスタック変数を前提としてしまってる
そもそも実装以前に、OOPどころか構造体的な概念も分かってないのでは?
いやさ、記憶領域の話をし出すから皆メモリの話をした訳だけど
ポインタとか言い出すと、Python上にはポインタは無いけど
CPython等の実装は変数が全てポインタで実体に対する参照なの
参照渡しというと普通は変数に対する参照を言うので関係ないし
変数が入れ物とはC言語などのスタック変数を前提としてしまってる
そもそも実装以前に、OOPどころか構造体的な概念も分かってないのでは?
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 中国国営メディア「沖縄は日本ではない」… [BFU★]
- NY円、一時1ユーロ=180円台まで下落…1999年のユーロ導入以来初 [蚤の市★]
- 高市政権にパイプ役不在…日中高まる緊張 公明党の連立離脱影響、自民内にも懸念「自分でまいた種は自分で刈り取ってもらわないと」 [ぐれ★]
- 【外交】日中関係悪化、長期化の様相 2012年には自動車輸出80%減も ロイター★3 [1ゲットロボ★]
- 国内ホテル、既にキャンセルも 訪日客関連業界、事態見守る ★3 [蚤の市★]
- 「稼ぐのよ!」高市総理が電話ガチャ切りで伝えたこと 鈴木憲和農林水産大臣が国政報告会に出席 自身が目指す農政の方針語る [煮卵★]
- SNS「トランプの北京爆撃発言の方が高市氏の一億倍ヤバい」👈この人たち幼稚すぎない? (´・ω・`) [399259198]
- 『しんちゃんと岸田さん』 [175344491]
- 自民「高市の一言でこれまで積み上げてきた関係が駄目になる。言葉の重みを分かっていない。自分でまいた種は自分で刈り取ってもらう」 [256556981]
- 中国発日本行の航空券、491,000件(全体の32%)がキャンセルされたと判明。高市どうすんのこれ [603416639]
- 中国国営放送「日本は琉球をただちに中国に返還せよ」 キタ━━━━(゚∀゚)━━━━!!!!! [314039747]
- 竹田天皇「中国の渡航自粛勧告は日本にとって渡りに船」 [377482965]
