1 名前:デフォルトの名無しさん [2019/02/04(月) 21:22:10.08 ID:9MrdxUVg.net] ★当スレにRubyのソースコード類を書くことを禁ず ☆Ruby等、Pythonではないプログラミング言語での回答類を書くことも禁ず このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。 へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。 エラーを解決したいときはエラー表示や環境(バージョン/IDEまたはcommand line/OS)を略さずに書き込んで下さい。 騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。 次スレは >>985 辺りで 前スレ くだすれPython(超初心者用) その40 mevius.5ch.net/test/read.cgi/tech/1542874174/ ◆PythonのHome Page www.python.org/ ◆まとめwiki ttp://python.rdy.jp/ ◆Pythonのソースコードをそのまま5ちゃんにコピペすると インデントが崩れるので こういうところ↓にはってきてください ttp://ideone.com/ Pythonするにはぷち手間あるのがめんどうかなぁ ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。 ttp://pastebin.com/ まずまずシンプル。 ttp://dpaste
896 名前:デフォルトの名無しさん [2019/03/14(木) 18:13:57.50 ID:1qhaQ5mP.net] あざます
897 名前:デフォルトの名無しさん mailto:sage [2019/03/14(木) 18:55:16.95 ID:cYjqrp0Z.net] >>846 ありがとうございました
898 名前:デフォルトの名無しさん mailto:sage [2019/03/14(木) 19:44:05.42 ID:prpM2HGX.net] 最適化には何の関係もないのよね型指定
899 名前:デフォルトの名無しさん mailto:sage [2019/03/14(木) 19:58:50.87 ID:r+Z4K3kn.net] >>875 むしろソースコードのパースの負荷が増えて僅かに遅くなるだろうな
900 名前:デフォルトの名無しさん mailto:sage [2019/03/14(木) 21:29:10.91 ID:DYXE/n/d.net] Ruby ←まず名前がダサい Python ←カッコイイ
901 名前:デフォルトの名無しさん mailto:sage [2019/03/14(木) 21:37:41.09 ID:Cgb2oqJn.net] pythonだけ見るとカッコイイけど元はモンティ・パイソンなんだよな
902 名前:デフォルトの名無しさん mailto:sage [2019/03/14(木) 21:48:50.71 ID:nL4uJ2zh.net] st.cdjapan.co.jp/pictures/l/04/02/NEOGDS-244522.jpg
903 名前:デフォルトの名無しさん mailto:sage [2019/03/14(木) 21:50:35.71 ID:nL4uJ2zh.net] https://images.idgesg.net/images/article/2018/07/python-100763894-large.jpg
904 名前:デフォルトの名無しさん mailto:sage [2019/03/15(金) 08:57:12.14 ID:Oo+XcCcU.net] pythonのコーディングに少しづつ慣れてきたせいで,のあとに半角スペースを挿入してしまうクセが付いてしまいました 簡単なテストのためダミーでcsv作る際に,後ろにに半角スペース入れるせいでcsvDictReaderで読んでkey指定したときにkeyErrorが出てしまい数十分ですが悩んでしまいました 今後はskipinitialspaceをtrueにして使います ありがとうございました
905 名前:デフォルトの名無しさん mailto:sage [2019/03/15(金) 09:55:37.05 ID:LNWMUSed.net] pythonに限らずほぼ全てのプログラミング言語でそういう癖が付くかと思うしそもそも欧米圏の言語でも全てそうだがお前何か言いがかりでも付けた
906 名前:いの? [] [ここ壊れてます]
907 名前:デフォルトの名無しさん mailto:sage [2019/03/15(金) 12:49:50.87 ID:zt0rtKct.net] python はビジュアル系スタジオみたいな統合環境は無いの?
908 名前:デフォルトの名無しさん mailto:sage [2019/03/15(金) 12:51:57.85 ID:EeWTkT4V.net] ビジュアル系スタジオちょっと好き
909 名前:デフォルトの名無しさん mailto:sage [2019/03/15(金) 13:13:04.71 ID:88mLDigX.net] >>883 あんたも好きね。 チャーミングなおっぱいがあるよ。 PyCharm
910 名前:デフォルトの名無しさん mailto:sage [2019/03/15(金) 13:25:05.27 ID:1iRTQcZ+.net] pycharm ceがタダで使えるのは助かるなぁ
911 名前:デフォルトの名無しさん [2019/03/15(金) 14:18:08.50 ID:SEjqglYP.net] 最新鋭の望遠鏡で使われてる タイパンがカッコ良かった UKシュミット望遠鏡自体は数十年の年季もんだけど タイパン付けると最新鋭に変身してた
912 名前:デフォルトの名無しさん [2019/03/15(金) 14:21:07.58 ID:SEjqglYP.net] これね https://www.youtube.com/watch?v=xrumMTsFkPY
913 名前:デフォルトの名無しさん mailto:sage [2019/03/15(金) 18:27:46.26 ID:HkVkKV93.net] オブジェクトをフォルダと考えるのは間違いなのですか
914 名前:デフォルトの名無しさん mailto:sage [2019/03/15(金) 18:38:30.61 ID:PFD13TRH.net] 考えてもいいぜ
915 名前:デフォルトの名無しさん mailto:sage [2019/03/15(金) 18:58:10.65 ID:8Z2zh4Or.net] Python初心者です。 scikit-learnで学習した学習結果を他の言語(C#)で利用したいと考えてます。 が、どうしたらいいのかわかりません。 どなたかご教授願います。
916 名前:デフォルトの名無しさん mailto:sage [2019/03/15(金) 23:30:46.48 ID:/jMwhNVt.net] 最終的に何をしたいのかをもう少し具体的に書いたほうが良いと思う 個人的に言語は統一した方が楽と思うよ
917 名前:デフォルトの名無しさん mailto:sage [2019/03/15(金) 23:48:43.20 ID:8Z2zh4Or.net] scikit-learnでじゃんけんの人間の癖を学習させて、 そこそこの制度で予想できるようになったので、それをスマホアプリとして公開したいという欲が湧いてきました。 Pythonではスマホアプリの開発は難しそうなのでその学習結果をC#に移植したいと考えてるのですが、 そういう事は可能ですか?
918 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 00:53:29.77 ID:lomlnXfv.net] !?
919 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 06:12:09.99 ID:MtyeuN+5.net] 可能 pythonに不可能は無い
920 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 10:56:59.10 ID:Eza8KstC.net] >>893 iOS なら、Pythonista で簡単にアプリを作れるぞ。 Androidでもできるだろ。 そもそもiOSだと、C#じゃなくObjective-C やSwift になるからかなり垣根は高いぞ。 因みにPythonista からはObjective-C のライブラリを使うこともできるし自由に呼び出すこともできる。 なお、scikit-learn そのものをPythonistaで使うことはできない。 numpy は使えるが、scipy がインストールできない。
921 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 11:10:13.00 ID:INaBYg0f.net] いやC#つってんだからUnityで作るんだろJK あれゲーム作るの簡単だからいいよな〜
922 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 11:18:22.65 ID:mXGVm9Ao.net] >>896 ありがとうございます。 Androidアプリを作られればIOSには対応できなくてもよいと考えてます。 Androidでscikit-learnを使うのは難しいでしょうか?
923 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 11:20:10.33 ID:mXGVm9Ao.net] Unityって物理エンジンですよね? scikit-learnのように機械学習もできるのですか?
924 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 11:31:31.62 ID:Slvebd/s.net] 学習機能は通信を介したサービスとして提供したら scikit-learnはサーバー側で動いてりゃ良いんだし
925 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 11:44:44.11 ID:+8YpvTs6.net] >>900 そっちの方が良いと思う 機械学習の多言語移植は考えただけで血の気が引く kerasならまだしも、scikit-learnは依存地獄が酷かった。今は大分マシ担ってるとは思うけど
926 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 11:48:05.65 ID:d/4KgbH7.net] じゃんけんするのにサーバーと通信するのは草 でもいまどきそんなもんなのか?
927 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 11:52:33.53 ID:+8YpvTs6.net] さすがに半分テストアプリだと思うけど、既に超敷居が高い
928 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 11:53:42.85 ID:mXGVm9Ao.net] 機械学習の移植は難しいものなんですね。 サーバーにPythonを置けばいいのですね。 ありがとうございます。
929 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 11:58:21.60 ID:eO5a7zjy.net] 学習からC#でやり直すわけにはいかないの? オブジェクト指向の機械学習ライブラリなんて言語によらず使い方似てるからそっちのが楽じゃない?
930 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 12:01:14.33 ID:eO5a7zjy.net] 「Unity 機械学習」 でググってもいろいろでてくるし
931 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 12:05:08.07 ID:mXGVm9Ao.net] C#で機械学習ですか! scikit-learnがすごく簡単だったのでscikit-learnで出来たらと考えてました。 使い方が似ているのならその選択も検討してみます。 ありがとうございます。
932 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 12:12:34.74 ID:Eza8KstC.net] せっかくPython の勉強を始めたんだから、Python でゲーム開発までやれば良いのに、じゃんけんアプリなんて簡単でしょ。 どんなPython ゲームライブラリが適切なのかは知らないけど。
933 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 12:14:27.10 ID:SlIDoTSl.net] selfについて何度も聞いてるカスなんですが、まだ意味が理解できてません このコードの場合どういった意味を持ちますか? インスタンス自身と言われてもイメージがつきません 記憶領域という説明も見たことがありますが、これはどういう意味でしょうか 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()
934 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 12:15:53.61 ID:SlIDoTSl.net] 訂正です ×このコードの場合どういった意味を持ちますか? ○このコードのようにselfを使うメリットはなんですか?
935 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 12:24:28.76 ID:Eza8KstC.net] Android ならQpython にはKivy がバンドルされてるらしいし、kivy で良いんじゃないの?
936 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 12:29:58.42 ID:+8YpvTs6.net] >>909 コードが変なので修正した codepad.org/L0lJBrzg メモリ上のデータをイメージできれば簡単に理解できるんだけどね インスタンスとか言っても逆に分からんだろうな https://brain.cc.kogakuin.ac.jp/~kanamaru/lecture/C++2/09/09-02.html cpp.aquariuscode.com/class-memory-layout
937 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 12:38:34.92 ID:mXGVm9Ao.net] >>908 Pythonは機械学習やディープラーニングを始めたくて最近勉強し始めました。 勉強してくうちにアプリを公開したいと思うようになった次第ですw GUIはC#の方が簡単そうなので2つの言語をうまく連携できればと思ったのですが、 難しいようですね。 もちろんPythonはこれからも使いたいと思います!
938 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 12:58:16.11 ID:Cc4OYSLe.net] >>909 まず自分でクラス書く前にライブラリでクラス使ってみたらわかるだろ pandasのチュートリアルとか何でもいいけどインスタンス作ってメソッド使ってインスタンス変数参照したらself何なのかも見えてくる メモリ上の何とかなんか意識しなくていい
939 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 13:11:48.23 ID:eO5a7zjy.net] 「入門python3」を一冊買ってやろう。
940 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 18:05:24.13 ID:fe/BGgDT.net] vscodeとintellijのpython機能で試したのですが awsのsdk boto3でインスタンス化したクライアントに対してオートコンプリートを働くようにするのってどうしたらよいでしょうか? 以下のようにして変数cを作っても、変数cをBaseClient型としか認識してくれないので、s3関連のメソッドがオートコンプリートで出てきてくれません。 c = boto3.client('s3') もちろん実行時はちゃんとs3の型になるのでコードを動かす事は出来るのですが、オートコンプリート無しはちょっときついので、なんとかして出す方法があれば教えてください。
941 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 18:30:45.43 ID:SlIDoTSl.net] >>914 ライブラリでクラスを書くとはなんのことですか? >>912 c++がわかりません selfはメモリ領域を確保するために必要になるもの、という認識でいいんでしょうか?おそらくインスタンスを作った時点でメモリが確保されるのかと思いますが。
942 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 18:36:03.43 ID:YxxaJZky.net] >>916 型アノテーションで変数の型を明示的に指定する
943 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 18:53:42.59 ID:+8YpvTs6.net] >>917 ・インスタンスを作成 ・メモリ領域を確保 ・self=インスタンス この辺はもう全部イコールで考えても構わない 例外的にstaticやglobalでインスタンス外にメモリ領域を確保することも出来るけど 図で言うとこんな感じ https://i.imgur.com/gNRp6HQ.png
944 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 19:28:51.03 ID:sQCNGdE3.net] >>917 インスタンスを作った時点でメモリが確保は良い。でも確保にselfは関係ない 内部だと__init__より前に__new__が呼び出され、そこでメモリ確保が行われる 語弊を恐れずに言ってしまえば、selfはそのメモリがどこか位置を示すものだ メリットがどうとかじゃない、sとs2は同じ型だが別物だろう、それを区別するために必要なんだ
945 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 19:33:23.24 ID:1feDyboY.net] >>919 「のタイミング!」 ですか?
946 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 20:16:22.51 ID:SlIDoTSl.net] >>919 >>920 ありがとうございます あれ?これってもしかしてポインタというやつなんですか?pythonの場合そういった呼ばれ方は見たことがありませんが https://wa3.i-3-i.info/word12815.html
947 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 20:31:38.84 ID:INaBYg0f.net] 山椒
948 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 21:47:12.09 ID:+8YpvTs6.net] >>922 似たようなもんで「参照」 ポインタと参照の違い https://qiita.com/agate-pris/items/05948b7d33f3e88b8967 cocodrips.hateblo.jp/entry/2015/12/08/221722 メモリ上にインスタンスが展開されてるイメージができれば大体ok
949 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 22:04:48.14 ID:/h3gEsxd.net] C言語使わない人にその教え方はどうなのよ。悪いことは言わないから「入門python3」を買って一通りやろう。
950 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 22:11:31.40 ID:431M+yCA.net] 入門python3ってあんまりレビューが良くないね
951 名前:847 [2019/03/16(土) 23:16:52.98 ID:1E15fsAJ.net] インスタンスや、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 にも応用できるから
952 名前:デフォルトの名無しさん [2019/03/16(土) 23:27:14.53 ID:DylECkfT.net] >>927 > self.name よりも、@name の方がわかりやすいから! アピールポイントそれだけ? @がメンバ変数を表すなんて知らなきゃ分からんし、直感でも何となく察せるself.〜の方が分かりやすいと思うが
953 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 23:28:24.96 ID:1G1aklbm.net] 自分もPython初心者だけど ttps://www.python-izm.com ここのサイトめちゃくちゃわかり易かったので載せときたす。
954 名前:デフォルトの名無しさん mailto:sage [2019/03/16(土) 23:35:31.32 ID:8PxPizsB.net] >>927 さすがクソ記号言語perlの末裔w 一生記号暗記してろ。 そして死ね。
955 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 00:17:39.16 ID:oRKycfKe.net] >>927 なんでJavaないの? 理解できなかったの?
956 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 01:42:26.25 ID:ttbbgHOa.net] chromeの拡張機能を自動操作することは可能ですか?
957 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 02:01:28.71 ID:QLspzkYx.net] >>937 ちらっとのぞいてみたが、目次が良くないね。 最初から順を追って進めて行く人にとっては良いかもしれないけど。
958 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 02:05:09.07 ID:nMZPqZIX.net] 937に期待
959 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 02:05:36.23 ID:pyRBRMBz.net] >>926 どこのレビュー?Amazon見る限りは良さそうだけど…
960 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 05:27:50.39 ID:nAjwMdDd.net] >>924 ありがとう
961 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 07:33:20.83 ID:nAjwMdDd.net] https://wa3.i-3-i.info/word16070.html こういう説明がわかりやすいのに、、、
962 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 07:39:55.25 ID:nAjwMdDd.net] 変数がメモリ上にあって、その変数の場所を渡すのが参照わたし=self ということでいいんですか?
963 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 08:24:23.53 ID:HhaziKqA.net] 参照渡しがどうこうはとりあえず忘れろ 今までの流れには全く関係ないから
964 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 08:25:15.86 ID:HhaziKqA.net] 今までの流れってのはselfの話な
965 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 08:37:05.58 ID:Udd8jK7+.net] >>935 書き方が悪かったわ 完全な初心者にとっては難しくてレビューが良くないね
966 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 08:41:05.15 ID:nAjwMdDd.net] >>939 えっ?関係ないのですか、、、
967 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 11:18:35.50 ID:oeP02mQD.net] Pythonではすべてが値渡しだ そしてすべての値が所謂参照型だってだけ
968 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 11:41:11.52 ID:R43k4iG5.net] 内部的に参照渡しみたいなもんなんだからメモリの概念教えないと永久に理解できなく内科?
969 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 11:57:02.77 ID:X1cUtWYO.net] 参照渡しってどこが
970 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 12:00:59.08 ID:X1cUtWYO.net] 参照渡しについて C#のrefみたいなのを参照渡しと呼ぶ勢と C++のhoge&みたいなのを参照渡しと呼ぶ勢がいるので ややこしい
971 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 12:08:17.15 ID:iuUxAYpH.net] 一子相伝究極奥義「参照渡し」
972 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 12:11:50.92 ID:Udd8jK7+.net] 値渡しと参照渡しと参照の値渡しがあるんだっけ
973 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 12:12:20.76 ID:nAjwMdDd.net] >>943 値渡しということはコピーということですかね
974 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 12:14:55.90 ID:7j/Zhhp5.net] 大地参照も変換できない糞スマホの糞IME
975 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 12:15:53.60 ID:vfP8HMqf.net] 大地讃頌
976 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 12:21:40.62 ID:XvGPMByn.net] >>946 C#のrefとC++のhoge&はどちらも変数のエイリアスを渡すから一緒 紛らわしいのは「参照の値渡し」
977 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 15:27:46.05 ID:9wVKFPUf.net] >>937-938 いやさ、記憶領域の話をし出すから皆メモリの話をした訳だけど ポインタとか言い出すと、Python上にはポインタは無いけど CPython等の実装は変数が全てポインタで実体に対する参照なの 参照渡しというと普通は変数に対する参照を言うので関係ないし 変数が入れ物とはC言語などのスタック変数を前提としてしまってる そもそも実装以前に、OOPどころか構造体的な概念も分かってないのでは?
978 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 18:00:19.80 ID:oeP02mQD.net] >>938 こういう簡単なクラスで考えてみる class MyClass: def __init__(self, name): self.name = name def getname(self): return self.name コンストラクタで名前を受け取って、自身のnameプロパティにセットする getnameメソッドでは自身の名前を返す簡単なクラス このクラスの使い方は以下 a = MyClass("John") a.getname() // 出力 'John' ただしこういう風にも書ける a = MyClass("John") MyClass.getname(a) // 出力 'John' Pythonのインスタンスメソッドは単なる関数もしくはスタティックメソッドみたいなものだということがわかる a.getname() は暗黙的に MyClass.getname(a) に置き換えられてると考えてもいい
979 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 18:01:31.22 ID:oeP02mQD.net] >>938 さらにselfというものがわかりやすいようにこのクラスを普通の関数と辞書型で再現してみる def MyClass(name): self = {} __init__(self, name) return self def __init__(self, name): self["name"] = name def getname(self): return self["name"] a = MyClass("John") getname(a) // 出力 'John' これでだいたい再現できる 何が言いたいかというとMyClass()という関数が空のインスタンス(ここでは辞書だが)を作成して__init__に引数として渡している たぶんPythonのクラスでも暗黙的にMyClass()という関数が生成されて間接的に__init__を呼び出している つまりself(=MyClassのインスタンス)というのは暗黙的に作られたMyClass()関数内で作られているオブジェクトだと考えればいい Pythonほとんどやったことないから想像で適当に言ってるだけだけどな
980 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 19:53:26.49 ID:UUXyH29G.net] >>954 self.name = name 部分はself変数にnameプロパティがついている状態なんですか? nameのほうが変数名かとおもっていましたが self.nameとすることでnameプロパティを定義している という感じですかね なんのためにあるのかわからないですが
981 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 21:13:22.59 ID:pWnkPEfA.net] >>955 デタラメな回答するの辞めーや
982 名前:デフォルトの名無しさん [2019/03/17(日) 21:52:19.70 ID:oeP02mQD.net] >>957 詳しいなら教えてくれ
983 名前:847 mailto:sage [2019/03/17(日) 22:22:14.14 ID:QeX4wN+m.net] self.name = name Ruby では、@ がインスタンス変数です。 @name = name インスタンスや、インスタンス変数は、オブジェクト指向の基礎。 クラスはひな形で、実体化するには、個々のインスタンスを作らないといけない これがわからないのなら、Rubyをみっちり勉強した方がよい。 Python から始めるのは無理 オブジェクト指向・関数型は、Rubyで学んだ方がよい。 Python, JavaScript, Kotlin にも応用できる
984 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 22:28:34.62 ID:Ea7K77ki.net] Rubyは最も一般的な方法で定義した関数(関数じゃないw)が値として取り回せない(第一級関数でない)クソ言語wwwww def add(a, b) a + b end def opTwo(a, b, func) func(a, b) end p opTwo(1, 2, add) => Line 9:in `add': wrong number of arguments (0 for 2) (ArgumentError) from t.rb:9 プギャーm9(^Д^ ) ちなみにPython: def add(a, b): return a + b def opTwo(a, b, func): return func(a, b) print(opTwo(1, 2, add)) => 3 ちなみにJavascript: function add(a, b) { return a + b; } function opTwo(a, b, func) { return func(a, b); } console.log(opTwo(1, 2, add)) => 3
985 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 22:29:45.96 ID:Ea7K77ki.net] def、proc、Proc.new、->、lambda、ブロック、・・挙動と使いどころの異なるこれら関数ライクを使いこなし、 ==、===、eql?、equal?の違いと使いどころを完璧に把握しているRuby信者wwwww
986 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 22:31:54.89 ID:Ea7K77ki.net] Ruby 初心者スレッド Part 64 mevius.5ch.net/test/read.cgi/tech/1535797516/658 658 デフォルトの名無しさん sage 2018/10/15(月) 10:09:06.69 ID:r7U1tD/N 擬似コードがそのまま動くのはPythonじゃね 関数型言語なら演算子がそのまま第一級関数であることとカリー化を使って data |> select ((>) 0) みたいに書けたりするね ガチ関数型でなくてもまともなラムダがある言語なら select(x => x > 0) と遥かに見通し良く書ける Rubyの &:: は極めて驚きが大きく醜悪な機能の一つだね
987 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 22:33:19.32 ID:Ea7K77ki.net] クロージャって何がいいの? [転載禁止]©2ch.net mevius.5ch.net/test/read.cgi/tech/1415419907/261 261 デフォルトの名無しさん sage 2014/12/15(月) 23:02:52.91 ID:BuhXHDiL さらに言えば、Rubyのブロック変数のスコープの扱いが1.9で仕様変更されてるけど、 それについてmatz自身が > それは、Rubyが最初から関数型言語としてスタートしてないからであって、言語が違うからですよね。 と語っているね www.atmarkit.co.jp/news/200907/24/ruby.html
988 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 22:50:20.65 ID:vwxCn2J+.net] 必死すぎるw
989 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 22:58:46.72 ID:Ea7K77ki.net] Rubyを長く使い続けることを僕がお薦めしない理由を説明します - YouTube https://www.youtube.com/watch?v=2wfQ3iG08UI
990 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 22:59:12.36 ID:Ea7K77ki.net] 「Railsは終わった」と言われる理由 https://qiita.com/klriutsa/items/86ac5e94ec99c0d95b61
991 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 23:07:59.19 ID:Ea7K77ki.net] GitHub、2018年の人気プログラミング言語を概観できる「The State of the Octoverse」を発表 https://www.softantenna.com/wp/software/the-state-of-the-octoverse-2018/ 日本人が作ったプログラミング言語がランクイン! 誇らしい!!
992 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 23:13:16.15 ID:Ea7K77ki.net] GitHubのRails離れと、迫りくるMicrosoft https://yakst.com/ja/posts/5290
993 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 23:20:10.39 ID:Ea7K77ki.net] 世界最大のソフトウェア開発プラットフォームで最も人気なプログラミング言語は何なのか? https://gigazine.net/news/20181116-top-programming-languages-2018/ さあ何なのか!?日本の埃、Rubyかな?
994 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 23:23:45.80 ID:Ea7K77ki.net] Pythonが2018年も人気ナンバーワン言語に - Rubyは13位へ https://www.softantenna.com/wp/software/ieee-spectrum-top-programming-languages-2018/ >日本生まれのプログラミング言語Rubyの順位は昨年の12位から13位へと一つ順位を落としています。 https://findy-code.io/engineer-lab/github-programming-language-ranking ↑「衰退するかもしれない言語」のRubyのグラフ凄すぎwww
995 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 23:24:59.24 ID:Ea7K77ki.net] https://i.imgur.com/0YbMsqj.jpg
996 名前:デフォルトの名無しさん mailto:sage [2019/03/17(日) 23:39:56.92 ID:vwxCn2J+.net] この調子で1000まで埋めてくれwww
997 名前:956 mailto:sage [2019/03/18(月) 00:32:48.76 ID:QSJWNz5N.net] なんとなくわかったわ __new__でインスタンス生成して__init__で初期化されてるのはいいとして それらの関数がどこから呼ばれるかが分からなかったけど type.__call__(cls, *args, **kwarg)から呼ばれてるんだな class MyClass: def __new__(cls, name): return object.__new__(cls) def __init__(self, name): self.name = name def getname(self): return self.name a = MyClass("Mike") # これは a = type.__call__(MyClass, "Mike") # これの糖衣構文と type.__call__はざっくり以下のような実装らしい class type: def __call__(cls, *args, **kwarg): obj = cls.__new__(cls, *args, **kwargs) obj.__init__(*args, **kwargs) return obj 一番元になるオブジェクトを生成するであろうobject.__new__()がどういう風に実装されてるのかは分からなかった Cで実装されてるらしい
998 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 00:34:09.24 ID:GvvOJgHh.net] 破産者マップに出てるぞお前さん
999 名前:デフォルトの名無しさん [2019/03/18(月) 01:21:38.93 ID:HYm9qYKJ.net] Rubyに興味も失ってたが、調べたらRuby3から頑張るっぽいね。 JITは今現在はオンにしてもRails遅くなるっぽい。 型検査はツールの提供と精度向上の方針。 “Rubyは死んだ”のか? まつもとゆきひろ氏が語る「プログラミング言語サバイバル」とRubyの未来 - Part1 https://logmi.jp/tech/articles/320752 かと思えば、こんな深刻な記事も。 想定してなかったくらい大規模な開発に使われて、つぎはぎ継ぎ接ぎで開発して行ったら行き詰まったって話になるのかな? Pythonも、同類になる可能性はあるが時期が早く来たのはRubyだったと。 Rubyは滅びゆく言語なのか? https://qiita.com/baban/items/a5a9819a4020f92e27e2
1000 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 01:32:41.95 ID:TDQy6vox.net] Redmonk言語ランキングがKotlinとSwiftの急上昇を明らかにした https://www.infoq.com/jp/news/2018/05/RedmonkLanguageRankingsQ118 > Rubyは5位から8位に下がりはしたが、他のトップ10言語はほとんど同じ順位にとどまっている。 独り負けwwww
1001 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 01:33:16.80 ID:TDQy6vox.net] 日本生まれのクソ言語Ruby『最も嫌われているプログラミング言語』堂々ランクイン!! https://japan.zdnet.com/article/35109803/ おめでとうクソ言語!🎊 おめでとう日本の恥!!www https://japan.zdnet.com/storage/2017/11/02/e28392adae17a191547db083133339eb/171106-zdnet-1-01-languages-1-900x675.png
1002 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 01:56:22.04 ID:TDQy6vox.net] Ruby is dead. https://rubyisdead.science/
1003 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 02:01:08.34 ID:TDQy6vox.net] Rubyにはウンザリ!動的型付け、副作用、およびオブジェクト指向プログラミング全般からの考察 https://postd.cc/sick-of-ruby-dynamic-typing-side-effects-object-oriented-programming/
1004 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 07:48:49.96 ID:C9BGuQ42.net] self.name = name みたいな変数は self変数にnameプロパティを定義しているということなんですか? init内に書かれる事が多いですが、プロパティはどのような使われ方をするのでしょうか
1005 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 11:21:28.47 ID:vyVf53oQ.net] Pythonでアニメーションムビーって作れますか? 教えてエロい人
1006 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 11:42:29.94 ID:GvvOJgHh.net] 出来るよ このポリゴンアニメもPython で組まれている https://youtu.be/lU-stMiFESQ
1007 名前:デフォルトの名無しさん [2019/03/18(月) 13:43:14.45 ID:+MPRGO7m.net] くだすれPython(超初心者用) その42【Ruby禁止】 mevius.5ch.net/test/read.cgi/tech/1552884175/
1008 名前:デフォルトの名無しさん [2019/03/18(月) 13:50:09.52 ID:HYm9qYKJ.net] 乙
1009 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 14:39:32.03 ID:3zrU7iIi.net] Pythonなら音声合成も機械学習でできるよ!
1010 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 14:59:40.24 ID:vyVf53oQ.net] >>982 ありがとうエロい人 よろしければおすすめのライブラリ教えてください
1011 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 16:32:01.12 ID:8JXxWTh8.net] Pythonなら毛糸洗いに自信が持てるよ!
1012 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 17:23:25.93 ID:LuaAQ2Ag.net] >>987 それはボールドだろ
1013 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 17:23:44.99 ID:LuaAQ2Ag.net] お、IDがlua永久にアゲだ
1014 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 17:33:08.14 ID:1Gq1ACAN.net] Python(Jupyter)で、複数の行をループさせることって出来ますか? やりたいことはIn[5]〜In[8]を10回繰り返す、みたいな感じです
1015 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 20:07:37.57 ID:C9BGuQ42.net] selfわかんないよぉ(´;ω;`)
1016 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 20:25:52.07 ID:3zrU7iIi.net] >>991 class className(): def methodName(self): print("Hello World!") instance = className() instance.methodName()
1017 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 20:30:41.38 ID:jiPExRTx.net] >>990 forループとかwhileループをさがしてるのか?
1018 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 20:34:08.67 ID:C9BGuQ42.net] self.name=nameみたいなやつは、変数名はnameなのですが、selfなのですか?
1019 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 20:36:17.92 ID:C9BGuQ42.net] >>992 ですからこれ、selfはなんの役割をしているのですか?
1020 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 20:41:13.50 ID:jiPExRTx.net] >>994 そうだな >>995 この()の中のselfについては深く考えたことないなー クラス化した場合は 必ず1ツ目の引数self ってのは なんかもう 条件の後とかに「:」つけるのと一緒な感覚だなー
1021 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 21:09:20.45 ID:GvvOJgHh.net] >>99
1022 名前:5 class className(): def methodName(zelf): print("Hello World!") instance = className() instance.methodName() でも動くぞ [] [ここ壊れてます]
1023 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 21:17:48.43 ID:GvvOJgHh.net] よって、 self =zelf (証明おわり)
1024 名前:デフォルトの名無しさん mailto:sage [2019/03/18(月) 21:36:51.06 ID:C9BGuQ42.net] ↑ありがつ
1025 名前:デフォルトの名無しさん [2019/03/18(月) 23:31:38.66 ID:+MPRGO7m.net] >>991 考えるな感じるんだ
1026 名前:847 mailto:sage [2019/03/18(月) 23:42:48.23 ID:e1XJ4IHa.net] self, this は、そのインスタンスを指す。 オブジェクト指向の基本だろ それもわからない人には、Python は無理! 勉強の順番を変えてください! Ruby でみっちり、オブジェクト指向・関数型を学んでください! その後に、Python, JavaScript, Kotlin に応用してください!
1027 名前:デフォルトの名無しさん [2019/03/18(月) 23:44:39.51 ID:+omKGkAV.net] これ、スコープとかnamespaceをわかっとらん
1028 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 42日 2時間 22分 29秒
1029 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています