★当スレに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禁止】
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2019/02/04(月) 21:22:10.08ID:9MrdxUVg741デフォルトの名無しさん
2019/03/09(土) 16:37:19.27ID:WSwBoc7f >>726
自演に思われそうかつ高次脳機能障害みたいな略の持ち上げはYAMETE!
数式的に妥当かは与り知らんけど、Pythonに変数のエイリアスは無いしね
古典的な静的型言語と違い、変数は実体への参照に過ぎないのもハマりがちな所
代入を除く変更ってのも色々語弊が有るな、実体に対する操作と表現するべきか
>>735
んー…確かにドキュメントではその辺りが欠けているというか正式実装じゃない?
既に他者のPythonコードが読めるなら直接↓を見るとか、helpやpydocに掛けるなり
https://github.com/asweigart/pyautogui/blob/master/pyautogui/_window_win.py
質問に対する愚直な答えは同モジュールのようなctypesでWindows APIを呼び出したりが基本になるだろうけど
既存ライブラリに無い操作を実装するに際しては、Microsoft Docsとかにマクロの具体的な定数が併記されてないと
Windows SDKのC/C++ヘッダーも参照する事になるし、最終目標に対し言語や実現方法などが適切かも考えた方が良い
自演に思われそうかつ高次脳機能障害みたいな略の持ち上げはYAMETE!
数式的に妥当かは与り知らんけど、Pythonに変数のエイリアスは無いしね
古典的な静的型言語と違い、変数は実体への参照に過ぎないのもハマりがちな所
代入を除く変更ってのも色々語弊が有るな、実体に対する操作と表現するべきか
>>735
んー…確かにドキュメントではその辺りが欠けているというか正式実装じゃない?
既に他者のPythonコードが読めるなら直接↓を見るとか、helpやpydocに掛けるなり
https://github.com/asweigart/pyautogui/blob/master/pyautogui/_window_win.py
質問に対する愚直な答えは同モジュールのようなctypesでWindows APIを呼び出したりが基本になるだろうけど
既存ライブラリに無い操作を実装するに際しては、Microsoft Docsとかにマクロの具体的な定数が併記されてないと
Windows SDKのC/C++ヘッダーも参照する事になるし、最終目標に対し言語や実現方法などが適切かも考えた方が良い
742デフォルトの名無しさん
2019/03/09(土) 17:08:54.75ID:QD5YmF9d >>741
ありがとうございます。
URL参考にさせていただきます。
外部アプリの操作にPythonは向いてないのでしょうか。
私なりに調べたところPythonからpowershellを実行するのが一番簡単そうだと思いました。
何かよい手があれば教えてください。
ありがとうございます。
URL参考にさせていただきます。
外部アプリの操作にPythonは向いてないのでしょうか。
私なりに調べたところPythonからpowershellを実行するのが一番簡単そうだと思いました。
何かよい手があれば教えてください。
743デフォルトの名無しさん
2019/03/09(土) 17:35:51.96ID:kfZA3URW ねむくなるねこのすれ
744デフォルトの名無しさん
2019/03/09(土) 19:17:19.14ID:fMIUxryy 初心者は寝てていいよ
745デフォルトの名無しさん
2019/03/09(土) 19:23:12.70ID:WSwBoc7f >>742
もっと全体的な流れ、具体的な結果に依るので抽象的な回答になってしまうけど
メモ帳へ文字入力というのが単にファイルの読み書きで済むなら迂遠だし
エディタを機械的に操作したければ何ぞスクリプト対応のアプリを使用するとか
汎用的に外部アプリ全般を弄りたくて起動や開く程度ならsubprocessとかでも十分だけど
細かい所はWinAPIを直接呼ぶ必要が出てきてたり、大半がPowershellで構成されるなら
これはもうPythonの学習というより、それらにすり替わり、置き換えられるよねという事
外部アプリ操作≒UI操作なら一般的とは思わないが、シェル代わりや橋渡しとしてはよく使われる
Windows APIを呼び出す云々はSDKを使うネイティブ言語よりコンパイル諸々などお手軽な面はある
もっと全体的な流れ、具体的な結果に依るので抽象的な回答になってしまうけど
メモ帳へ文字入力というのが単にファイルの読み書きで済むなら迂遠だし
エディタを機械的に操作したければ何ぞスクリプト対応のアプリを使用するとか
汎用的に外部アプリ全般を弄りたくて起動や開く程度ならsubprocessとかでも十分だけど
細かい所はWinAPIを直接呼ぶ必要が出てきてたり、大半がPowershellで構成されるなら
これはもうPythonの学習というより、それらにすり替わり、置き換えられるよねという事
外部アプリ操作≒UI操作なら一般的とは思わないが、シェル代わりや橋渡しとしてはよく使われる
Windows APIを呼び出す云々はSDKを使うネイティブ言語よりコンパイル諸々などお手軽な面はある
746デフォルトの名無しさん
2019/03/09(土) 19:38:41.90ID:GVs3bbIF 例えば、Ruby から、powershell を呼び出して、クリップボード処理もできる。
str = `powershell Get-Clipboard`
>でも、メモ帳のウインドウサイズを変更し、文字を入力したいのです
基本的に、他人が作ったアプリは、他のアプリから操作できない。
操作できるためには、操作用のAPI を公開して、その使用方法の文書も書く必要がある
powershell は公開されているから、他のアプリからも使えるけど、メモ帳はどうかな?
例えば、君が作ったアプリを、他のアプリから操作できるように、
わざわざ操作用のAPI を公開して、その使用方法の文書を書いたりしないでしょ?
面倒くさいし
そういうアプリは当然、他のアプリから操作できない
str = `powershell Get-Clipboard`
>でも、メモ帳のウインドウサイズを変更し、文字を入力したいのです
基本的に、他人が作ったアプリは、他のアプリから操作できない。
操作できるためには、操作用のAPI を公開して、その使用方法の文書も書く必要がある
powershell は公開されているから、他のアプリからも使えるけど、メモ帳はどうかな?
例えば、君が作ったアプリを、他のアプリから操作できるように、
わざわざ操作用のAPI を公開して、その使用方法の文書を書いたりしないでしょ?
面倒くさいし
そういうアプリは当然、他のアプリから操作できない
747デフォルトの名無しさん
2019/03/09(土) 19:44:42.88ID:C6v7oEvs rubyとかいうゴミ言語はまったく関係ないな
powershellを外部コマンドとして呼び出してるだけ
これでrubyスゴい!になっちゃうのがrubyキチガイのキチガイたる所以
powershellを外部コマンドとして呼び出してるだけ
これでrubyスゴい!になっちゃうのがrubyキチガイのキチガイたる所以
748デフォルトの名無しさん
2019/03/09(土) 19:47:45.08ID:3mUakWGD そんなことよりなんで今更何のためにメモ帳に書くのかな。そっちの方が興味がある。
749デフォルトの名無しさん
2019/03/09(土) 19:53:19.79ID:QD5YmF9d750デフォルトの名無しさん
2019/03/09(土) 19:57:06.37ID:wl/Le+J5 さすがは、チームRWBY
相手の力を利用するとは、なかなかやるね!
相手の力を利用するとは、なかなかやるね!
751デフォルトの名無しさん
2019/03/09(土) 20:21:03.99ID:Pn/iQo1s rubyはpycallとか作ってまで生き残りをはかってるからな
これほど「始まる前に勝負着いてた」事例があるだろうか
これほど「始まる前に勝負着いてた」事例があるだろうか
752746
2019/03/09(土) 20:40:28.25ID:GVs3bbIF Ruby では、こういう感じ。
Rubyから、powershell, clip コマンド(子プロセス)を呼び出す。
そして、このスクリプトをbat, vbs から呼び出すようにすれば、ダブルクリックでも起動できる
クリップボード内の複数行文字列の、各行の先頭・末尾から、
連続する空白類を除去して、クリップボードに入れる
str = `powershell Get-Clipboard` # クリップボードから取得
str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換
ary = str.each_line.map( &:strip ) # 空白類を除去
IO.popen( 'clip', 'w:cp932' ) do | clip |
clip.print( ary.join "\n" ) # クリップボードへ書き戻す
end
Rubyから、powershell, clip コマンド(子プロセス)を呼び出す。
そして、このスクリプトをbat, vbs から呼び出すようにすれば、ダブルクリックでも起動できる
クリップボード内の複数行文字列の、各行の先頭・末尾から、
連続する空白類を除去して、クリップボードに入れる
str = `powershell Get-Clipboard` # クリップボードから取得
str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換
ary = str.each_line.map( &:strip ) # 空白類を除去
IO.popen( 'clip', 'w:cp932' ) do | clip |
clip.print( ary.join "\n" ) # クリップボードへ書き戻す
end
753デフォルトの名無しさん
2019/03/09(土) 21:05:21.70ID:QD5YmF9d Pythonではできないのでしょうか?
754デフォルトの名無しさん
2019/03/09(土) 21:36:12.11ID:BnoVO+GE >>752
PowerShellすごい!
PowerShellすごい!
755デフォルトの名無しさん
2019/03/09(土) 21:51:05.13ID:Asclh6VQ756デフォルトの名無しさん
2019/03/09(土) 21:52:20.14ID:QD5YmF9d >>755
ここはPythonすれですよw
ここはPythonすれですよw
757デフォルトの名無しさん
2019/03/09(土) 23:13:21.29ID:QD5YmF9d 皆さん、相談にのっていただきありがとうございました。
SikuliというUI自動化ツールが優秀で思い通りの事ができました。
Pythonのスクリプトも使用できるのでとても満足です。
SikuliというUI自動化ツールが優秀で思い通りの事ができました。
Pythonのスクリプトも使用できるのでとても満足です。
758デフォルトの名無しさん
2019/03/09(土) 23:51:29.47ID:H6isrNei Ruby禁止のRubyの単語に反応して書き込んでる説
759デフォルトの名無しさん
2019/03/10(日) 01:39:40.52ID:/HGKNCBK 副業解禁で激変する若者世代とマネージャー世代のキャリア観
http://www.businessinsider.jp/post-107782
フリーランスの職種20個の仕事内容と平均年収をわかりやすく解説
http://www.proof0309.com/entry/shokushu
時給1万円のバイトも。会社員向きのプチ副業を、“バイト芸人”が教える
http://headlines.yahoo.co.jp/article?a=20190226-00127948-bizspa-bus_all
副業が「会社にバレる人」と「バレない人」の大差
http://headlines.yahoo.co.jp/article?a=20190303-00268007-toyo-bus_all
正社員の10%以上が副業 中には過重労働で体調崩す人も
http://headlines.yahoo.co.jp/hl?a=20190227-00010000-wordleaf-bus_all
「副業で年2000万円稼ぐ男」に学ぶキャリア戦略
http://headlines.yahoo.co.jp/article?a=20190221-00266856-toyo-bus_all
加速する「副業社会」正社員の4割が「副業したい」 気になる収入はどれくらい?
http://headlines.yahoo.co.jp/hl?a=20190218-00010001-danro-life
おすすめ副業22選を現役フリーランスが解説【在宅も可能】
http://www.proof0309.com/entry/zaitaku-hukugyou
会社を辞めてフリーランスで働きたいあなたが知っておくべき10のこと
http://www.businessinsider.jp/post-165731
フリーランスと会社員、働き方の根本的な差 広がる「雇用されない働き方」の課題とは何か
http://toyokeizai.net/articles/-/263055
フリーランス人口は増える!今後は仕事もプロジェクト単位になる!?
http://freelance.mts-career.com/population/
どのくらい稼げるの?フリーランスエンジニアの単価・報酬・年収の話
http://findy-code.io/engineer-lab/engineer-unitprice-income
http://www.businessinsider.jp/post-107782
フリーランスの職種20個の仕事内容と平均年収をわかりやすく解説
http://www.proof0309.com/entry/shokushu
時給1万円のバイトも。会社員向きのプチ副業を、“バイト芸人”が教える
http://headlines.yahoo.co.jp/article?a=20190226-00127948-bizspa-bus_all
副業が「会社にバレる人」と「バレない人」の大差
http://headlines.yahoo.co.jp/article?a=20190303-00268007-toyo-bus_all
正社員の10%以上が副業 中には過重労働で体調崩す人も
http://headlines.yahoo.co.jp/hl?a=20190227-00010000-wordleaf-bus_all
「副業で年2000万円稼ぐ男」に学ぶキャリア戦略
http://headlines.yahoo.co.jp/article?a=20190221-00266856-toyo-bus_all
加速する「副業社会」正社員の4割が「副業したい」 気になる収入はどれくらい?
http://headlines.yahoo.co.jp/hl?a=20190218-00010001-danro-life
おすすめ副業22選を現役フリーランスが解説【在宅も可能】
http://www.proof0309.com/entry/zaitaku-hukugyou
会社を辞めてフリーランスで働きたいあなたが知っておくべき10のこと
http://www.businessinsider.jp/post-165731
フリーランスと会社員、働き方の根本的な差 広がる「雇用されない働き方」の課題とは何か
http://toyokeizai.net/articles/-/263055
フリーランス人口は増える!今後は仕事もプロジェクト単位になる!?
http://freelance.mts-career.com/population/
どのくらい稼げるの?フリーランスエンジニアの単価・報酬・年収の話
http://findy-code.io/engineer-lab/engineer-unitprice-income
760デフォルトの名無しさん
2019/03/10(日) 09:53:19.84ID:5/+zyaBC >>752
死ね
死ね
761デフォルトの名無しさん
2019/03/10(日) 10:33:29.03ID:YmMiXd1Z ガイジなど世間的には生まれた時点で死んだような存在だろネットでくらい許せ
762デフォルトの名無しさん
2019/03/10(日) 18:44:45.56ID:uFsYqTSV ruby禁止は浸透したがpowershellも禁止でおながいしまつ
763デフォルトの名無しさん
2019/03/10(日) 19:04:53.21ID:w00/E2cH プログラマー40歳限界説
764デフォルトの名無しさん
2019/03/10(日) 19:42:00.71ID:XCpNHt+Q ブックマークしてたpowershellのマニュアルのアドレスが変更されたみたいだ
誰か知りませんか?
誰か知りませんか?
765デフォルトの名無しさん
2019/03/10(日) 19:50:01.61ID:eNJkLSXg スレチ
766デフォルトの名無しさん
2019/03/11(月) 02:31:05.67ID:Q8+quAlB numpyでベクトルの配列の全要素に行列を掛けるにはどうしたらいいでしょ?
やりたい事は
vec=[[0,0],[1,1],[2,2]...]
mat=[[0,1],[1,2]]
result=[m & v for v in vec]
こんな感じです
やりたい事は
vec=[[0,0],[1,1],[2,2]...]
mat=[[0,1],[1,2]]
result=[m & v for v in vec]
こんな感じです
767デフォルトの名無しさん
2019/03/11(月) 05:21:09.87ID:pTTv+VC9 mat@vec
768デフォルトの名無しさん
2019/03/11(月) 05:23:59.55ID:pTTv+VC9 vecの作り方によっては
mat@(vec.T)
mat@(vec.T)
769デフォルトの名無しさん
2019/03/11(月) 07:42:02.40ID:R4ZESWdO pythonできればc#もできますか?
pythonでゲームと、c#でwindowsのソフト両方を使ってますわ
pythonでゲームと、c#でwindowsのソフト両方を使ってますわ
770デフォルトの名無しさん
2019/03/11(月) 08:49:44.07ID:Rf81Fxun フォルダを空にしようと思いましたが、うまく行きません
shutil.rmtree(args.sample_dir)
os.mkdir(args.sample_dir)
os.mkdir(args.sample_dir)の部分で
PermissionError: [WinError 5] アクセスが拒否されました。: 'test/sample_img'
というエラーが出ます
ディレクトリが消えているので
shutil.rmtree(args.sample_dir)
はうまく行っているようです
このやり方はあまり良くないのでしょうか?
shutil.rmtree(args.sample_dir)
os.mkdir(args.sample_dir)
os.mkdir(args.sample_dir)の部分で
PermissionError: [WinError 5] アクセスが拒否されました。: 'test/sample_img'
というエラーが出ます
ディレクトリが消えているので
shutil.rmtree(args.sample_dir)
はうまく行っているようです
このやり方はあまり良くないのでしょうか?
771デフォルトの名無しさん
2019/03/11(月) 08:50:31.50ID:IpMePMuQ772デフォルトの名無しさん
2019/03/11(月) 12:16:20.15ID:hfHU2O5u >>771
forいらんで
forいらんで
773デフォルトの名無しさん
2019/03/11(月) 12:19:13.01ID:hfHU2O5u こういうことかな
(mat@(vec.T)).T
(mat@(vec.T)).T
774デフォルトの名無しさん
2019/03/11(月) 17:11:44.97ID:mNeqJkGU775デフォルトの名無しさん
2019/03/11(月) 17:33:25.52ID:pvnV5rIH inputした数字をそれぞれリスト化(aリスト,bりスト)したい。
入力(1行目は入力回数)
3
100 2
3 42
52 63
出力
[100, 3, 52] [2, 42, 63]
自分が作成したコードはinputをrangeで回してますが、inputを内包表記で1行で済ませる方法が分かりませんでした。
内包表記・関数でもうすこし短く出来ませんか?
cunt = int(input())
a_list = []
b_list = []
for i in range(cunt):
a,b = [int(x) for x in input().split()]
a_list.append(a)
b_list.append(b)
print(a_list,b_list)
入力(1行目は入力回数)
3
100 2
3 42
52 63
出力
[100, 3, 52] [2, 42, 63]
自分が作成したコードはinputをrangeで回してますが、inputを内包表記で1行で済ませる方法が分かりませんでした。
内包表記・関数でもうすこし短く出来ませんか?
cunt = int(input())
a_list = []
b_list = []
for i in range(cunt):
a,b = [int(x) for x in input().split()]
a_list.append(a)
b_list.append(b)
print(a_list,b_list)
776デフォルトの名無しさん
2019/03/11(月) 17:36:22.93ID:mNeqJkGU777デフォルトの名無しさん
2019/03/11(月) 17:38:42.78ID:mNeqJkGU778デフォルトの名無しさん
2019/03/11(月) 19:53:46.76ID:iNskGddB count = int(input())
temp = [None for x in range(count)]
for i in range(count):
temp[i] = input().split()
else:
a_list = [int(x[0]) for x in temp]
b_list = [int(x[1]) for x in temp]
print(a_list,b_list)
というかコードを書く前にcuntを辞書で引け
話はそれからだ
temp = [None for x in range(count)]
for i in range(count):
temp[i] = input().split()
else:
a_list = [int(x[0]) for x in temp]
b_list = [int(x[1]) for x in temp]
print(a_list,b_list)
というかコードを書く前にcuntを辞書で引け
話はそれからだ
779デフォルトの名無しさん
2019/03/11(月) 19:57:35.25ID:PGatxMde クリトリスですか?なるほど…
780デフォルトの名無しさん
2019/03/11(月) 20:39:01.91ID:mSdvFdhb print(*map(list, zip(*[map(int, input().split()) for i in range(int(input()))])))
781デフォルトの名無しさん
2019/03/11(月) 21:57:53.69ID:pvnV5rIH782デフォルトの名無しさん
2019/03/11(月) 22:05:12.11ID:IpMePMuQ783デフォルトの名無しさん
2019/03/11(月) 23:20:05.55ID:GdRfR4uu Ruby のArray#zip, transpose で、配列・行列の縦横変換できる。
zip の引数に、幾つかの配列(配列のリスト)を指定できる
p [1,2,3].zip([4,5,6], [7,8,9])
# => [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
zip の引数に、幾つかの配列(配列のリスト)を指定できる
p [1,2,3].zip([4,5,6], [7,8,9])
# => [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
784デフォルトの名無しさん
2019/03/11(月) 23:38:19.16ID:qe97t/2K >>783
グロ
グロ
785デフォルトの名無しさん
2019/03/11(月) 23:54:59.52ID:0HIo0fVP786デフォルトの名無しさん
2019/03/12(火) 00:08:58.95ID:KQFIYqiK787デフォルトの名無しさん
2019/03/12(火) 01:19:04.31ID:Tg1PBlZE788デフォルトの名無しさん
2019/03/12(火) 01:43:49.00ID:Tg1PBlZE >>787 同じロングマンなんだけどなんかニュアンスが違うな。
cunt
kʌnt
名 C《タブー》
1 《女性性器を意味する非常に侮蔑ぶべつ的な語》
2 《嫌悪感・怒りを感じる女性に対して用いる非常に侮蔑ぶべつ的な表現》
大辞林
カント 女性の性器。
コトバンク
[名]((卑))
1 たちの悪いやつ;いやなやつ
Don't be a silly cunt.
くだらんことを言うな.
2 女性器;性的対象としての女性, あばずれ;性交.
[オランダ語kunte←フランス語]
Oxford
vulgar slang
1 A woman's genitals.(性器)
1.1 An unpleasant or stupid person.
Origin
Middle English: of Germanic origin; related to Norwegian and Swedish dialect kunta, and Middle Low German, Middle Dutch, and Danish dialect kunte.
cunt
kʌnt
名 C《タブー》
1 《女性性器を意味する非常に侮蔑ぶべつ的な語》
2 《嫌悪感・怒りを感じる女性に対して用いる非常に侮蔑ぶべつ的な表現》
大辞林
カント 女性の性器。
コトバンク
[名]((卑))
1 たちの悪いやつ;いやなやつ
Don't be a silly cunt.
くだらんことを言うな.
2 女性器;性的対象としての女性, あばずれ;性交.
[オランダ語kunte←フランス語]
Oxford
vulgar slang
1 A woman's genitals.(性器)
1.1 An unpleasant or stupid person.
Origin
Middle English: of Germanic origin; related to Norwegian and Swedish dialect kunta, and Middle Low German, Middle Dutch, and Danish dialect kunte.
789デフォルトの名無しさん
2019/03/12(火) 12:29:06.26ID:Le2Xhtue 引数のイメージなんですが、引数は材料で、材料を関数で調理器にかけるイメージでしょうか?
790デフォルトの名無しさん
2019/03/12(火) 12:30:30.49ID:F9OOaHwl 戻り値は?
791デフォルトの名無しさん
2019/03/12(火) 12:33:21.35ID:c3A0Gx7w ひき肉を作る機械のイメージでええんやないの
上に入れる肉が引数、機械が関数、出てきたひき肉が戻り値
上に入れる肉が引数、機械が関数、出てきたひき肉が戻り値
792デフォルトの名無しさん
2019/03/12(火) 12:36:33.66ID:rf03pH6k 引数に肉しか入れてないのに勝手に台所のコショウが減ったり電気使われたりするのが副作用
793デフォルトの名無しさん
2019/03/12(火) 12:39:17.36ID:Le2Xhtue ひき肉が引数、調理器が関数、バーグが戻り値
ありがとうござ
ありがとうござ
794デフォルトの名無しさん
2019/03/12(火) 12:41:44.81ID:Le2Xhtue selfの意味ってなんですか?
単に関数を作成したときにデフォルトでついてくる引数という感じでしょうか。
だとしたらなんのためにですか?
読んでみたんですが、イマイチイメージが、、、
単に関数を作成したときにデフォルトでついてくる引数という感じでしょうか。
だとしたらなんのためにですか?
読んでみたんですが、イマイチイメージが、、、
795デフォルトの名無しさん
2019/03/12(火) 12:52:43.68ID:uvkzn3tS >>794
selfは関数ではなくクラスのメソッドに付ける
Javaのthisみたいなもので、メソッドを呼び出したオブジェクト自身を受け取るための引数
メソッド内でメンバ変数を参照したり別のメソッドを呼び出したりする時にself.〜 として使う
selfは関数ではなくクラスのメソッドに付ける
Javaのthisみたいなもので、メソッドを呼び出したオブジェクト自身を受け取るための引数
メソッド内でメンバ変数を参照したり別のメソッドを呼び出したりする時にself.〜 として使う
796デフォルトの名無しさん
2019/03/12(火) 12:58:27.33ID:R/A89vkp 横からすいません
self、self以外を指定することはあるのでしょうか?
self、self以外を指定することはあるのでしょうか?
797デフォルトの名無しさん
2019/03/12(火) 13:11:28.09ID:rdaDEiid798デフォルトの名無しさん
2019/03/12(火) 13:16:23.13ID:rf03pH6k hoge.myMethod(fuga, piyo)
myMethod(hoge, fuga, piyo)
みたいなイメージ
myMethod(hoge, fuga, piyo)
みたいなイメージ
799デフォルトの名無しさん
2019/03/12(火) 13:20:45.17ID:6Uu2j9Xc >>782
馬鹿には無理
馬鹿には無理
800デフォルトの名無しさん
2019/03/12(火) 13:36:24.76ID:R/A89vkp >>797
ありがとうございます
ありがとうございます
801デフォルトの名無しさん
2019/03/12(火) 13:58:38.98ID:c3A0Gx7w そもそも何でメソッドの引数にオブジェクト自身を渡すんやろうか
obj.method()みたいに呼び出すなら、どのオブジェクトをメソッドに渡すかわ明らかなんだから、省略できそうなのに
obj.method()みたいに呼び出すなら、どのオブジェクトをメソッドに渡すかわ明らかなんだから、省略できそうなのに
802デフォルトの名無しさん
2019/03/12(火) 14:09:51.25ID:R/A89vkp >>801
こういう渡し方をする言語、python以外にもあるんでしょうか
こういう渡し方をする言語、python以外にもあるんでしょうか
803デフォルトの名無しさん
2019/03/12(火) 14:19:35.49ID:rdaDEiid >>801
それはPythonのオブジェクト指向の実装方法とか基本理念によるもの、属性解決については
https://docs.python.org/ja/3/howto/descriptor.html#definition-and-introduction
self.meth()とcls.meth(self)の等価性を明示するみたいな論調も記憶にあるが公式なソースは忘れた
それはPythonのオブジェクト指向の実装方法とか基本理念によるもの、属性解決については
https://docs.python.org/ja/3/howto/descriptor.html#definition-and-introduction
self.meth()とcls.meth(self)の等価性を明示するみたいな論調も記憶にあるが公式なソースは忘れた
804デフォルトの名無しさん
2019/03/12(火) 14:39:35.59ID:5JRn7Uik >>802
perl
perl
805803
2019/03/12(火) 14:48:12.21ID:rdaDEiid selfに対する直接の説明としてはちょっとアンカーが適切ではないか
https://docs.python.org/ja/3.5/howto/descriptor.html#functions-and-methods
「関数に基づく環境の上に構築」って所がミソやね、後付けと言われる所以
https://docs.python.org/ja/3.5/howto/descriptor.html#functions-and-methods
「関数に基づく環境の上に構築」って所がミソやね、後付けと言われる所以
806デフォルトの名無しさん
2019/03/12(火) 16:34:54.17ID:8KtfShI4 >>802
tcl
tcl
807デフォルトの名無しさん
2019/03/12(火) 16:40:24.68ID:Le2Xhtue >>795
よくわからないけどありがとうひき肉おじさん
よくわからないけどありがとうひき肉おじさん
808デフォルトの名無しさん
2019/03/12(火) 17:17:23.48ID:8KtfShI4 わからないならレスしないでくださいうざいだけです
809デフォルトの名無しさん
2019/03/12(火) 17:19:11.50ID:Le2Xhtue インスタンス作成っていうのはメモリ上に領域を確保する作業ってことでいいんでしょうか。
810デフォルトの名無しさん
2019/03/12(火) 17:21:39.56ID:zkYMqbGV なにそれ
他のコード作業だとメモリを使用しないとでもw
他のコード作業だとメモリを使用しないとでもw
811デフォルトの名無しさん
2019/03/12(火) 17:23:18.47ID:zkYMqbGV クラス定義内に大量の関数定義を入れると、そのクラスがインスタンス化されたときに、インスタンスに自我意識が生まれます
812デフォルトの名無しさん
2019/03/12(火) 18:13:57.38ID:rf03pH6k 俺も3食インスタンスラーメンです
813デフォルトの名無しさん
2019/03/12(火) 19:11:13.53ID:qLQHaQxA selfはあってもなくても、どっちでも
よかったかもしらんが、
クラス外の普通の関数でも、いきなり
クラスのフレンド関数のようにしやすいといった、
モンキーパッチ的な利点もあるし、
一長一短。
よかったかもしらんが、
クラス外の普通の関数でも、いきなり
クラスのフレンド関数のようにしやすいといった、
モンキーパッチ的な利点もあるし、
一長一短。
814デフォルトの名無しさん
2019/03/13(水) 05:29:22.97ID:Z4mQGBB0 pythonのselfの超簡単なサンプルを教えてください
調べてるんですが、わかりにくくて、、、
調べてるんですが、わかりにくくて、、、
815デフォルトの名無しさん
2019/03/13(水) 06:11:09.78ID:nAhixTo8 サンプルって…メソッドならインスタンスを受け取るために必須なだけだ
倣うほどの規範は無いと思うけど、オブジェクト指向が理解できてないの?
倣うほどの規範は無いと思うけど、オブジェクト指向が理解できてないの?
816デフォルトの名無しさん
2019/03/13(水) 07:18:13.39ID:zpkiSS8W >>815
オブジェクト指向の理解というよりPythonの仕様の気が・・
横なんですけど、例えばあるクラスを継承したクラスがいくつかあって、それぞれで同じメソッドをオーバーライドしている時、Pythonは渡されたインスタンスを見てどのメソッドを呼び出すか決めているんですか?
つまりインスタンスとメソッドは別々に管理されていて、呼び出す時にインスタンスとメソッドは結び付けられるとか。
オブジェクト指向の理解というよりPythonの仕様の気が・・
横なんですけど、例えばあるクラスを継承したクラスがいくつかあって、それぞれで同じメソッドをオーバーライドしている時、Pythonは渡されたインスタンスを見てどのメソッドを呼び出すか決めているんですか?
つまりインスタンスとメソッドは別々に管理されていて、呼び出す時にインスタンスとメソッドは結び付けられるとか。
817デフォルトの名無しさん
2019/03/13(水) 07:28:44.40ID:Z4mQGBB0818デフォルトの名無しさん
2019/03/13(水) 07:44:07.11ID:zpkiSS8W819デフォルトの名無しさん
2019/03/13(水) 10:42:08.19ID:Nk0VyZbv 配列hogeを作成し、
print(hoge)を実行した時、[1. 2. 3. 4. 5.]の様に
数字にピリオドがついた時は浮動小数点型の配列なのでしょうか?
浮動小数点型の場合、整数型の配列にする方法はありますでしょうか?
print(hoge)を実行した時、[1. 2. 3. 4. 5.]の様に
数字にピリオドがついた時は浮動小数点型の配列なのでしょうか?
浮動小数点型の場合、整数型の配列にする方法はありますでしょうか?
820デフォルトの名無しさん
2019/03/13(水) 10:51:02.04ID:x5gb1xdG >>819
list(map(int,hoge))
list(map(int,hoge))
821デフォルトの名無しさん
2019/03/13(水) 11:00:58.72ID:Nk0VyZbv822デフォルトの名無しさん
2019/03/13(水) 11:08:04.74ID:Z4mQGBB0 class Cat(object):
def __init__(self, name, weight):
self.name = name
self.weight = weight
このコードのselfはどういう意味なんでしょうか?
猫というオブジェクトの属性を表現しているクラスのようです
def __init__(self, name, weight):
self.name = name
self.weight = weight
このコードのselfはどういう意味なんでしょうか?
猫というオブジェクトの属性を表現しているクラスのようです
823デフォルトの名無しさん
2019/03/13(水) 11:19:10.70ID:Y4yR4bDO824デフォルトの名無しさん
2019/03/13(水) 11:20:56.58ID:Y4yR4bDO x/yも見掛けるな
同種同士の同等な二項演算の定義に主体が入り込むのは気持ち悪いと思うよやっぱ
同種同士の同等な二項演算の定義に主体が入り込むのは気持ち悪いと思うよやっぱ
825デフォルトの名無しさん
2019/03/13(水) 11:34:37.37ID:imKqJmF7 >>822
Cat(‘neko’, 5) などと書くと__init__が呼び出されてselfには作成されたCatのインスタンスが渡される
つまり
c = Cat(‘neko’, 5)
とした時cとselfは同じものを指す
Cat(‘neko’, 5) などと書くと__init__が呼び出されてselfには作成されたCatのインスタンスが渡される
つまり
c = Cat(‘neko’, 5)
とした時cとselfは同じものを指す
826デフォルトの名無しさん
2019/03/13(水) 12:31:52.80ID:Z4mQGBB0 selfの意味がいまいち理解できていないのですが、引数の設定されたクラスや関数自身を表すということですよね
で、self自体を出力してみました
class classname:
def defname(self):
print(self)
s =classname()
s.defname()
<__main__.classname object at 0x03EE2F30>
selfを設定しているのは関数なのですが、これでは関数自身ではなく、クラス自身ではないですか?
また、これはどういったときに役立つのですか?
環境はidleです
>>825
ありがとうございます
読み解いてみます
で、self自体を出力してみました
class classname:
def defname(self):
print(self)
s =classname()
s.defname()
<__main__.classname object at 0x03EE2F30>
selfを設定しているのは関数なのですが、これでは関数自身ではなく、クラス自身ではないですか?
また、これはどういったときに役立つのですか?
環境はidleです
>>825
ありがとうございます
読み解いてみます
827デフォルトの名無しさん
2019/03/13(水) 12:44:16.23ID:Ux8DzXrZ >>826
>引数の設定されたクラスや関数自身を表すということですよね
うん
5ちゃんでは
インデント(連続してる半角スペース)が消えちまうので
めんどうでも全角スペース使って書きなおす(半角スペースを全角スペースに置換でおk)か
1に書いてあるような、ソースコード貼る専用のうpろだにうp
>引数の設定されたクラスや関数自身を表すということですよね
うん
5ちゃんでは
インデント(連続してる半角スペース)が消えちまうので
めんどうでも全角スペース使って書きなおす(半角スペースを全角スペースに置換でおk)か
1に書いてあるような、ソースコード貼る専用のうpろだにうp
828デフォルトの名無しさん
2019/03/13(水) 13:38:08.75ID:imKqJmF7 >>826
メソッドの中から別のメソッドを呼びたい時にselfが無いと詰む
メソッドの中から別のメソッドを呼びたい時にselfが無いと詰む
829デフォルトの名無しさん
2019/03/13(水) 15:00:34.67ID:Ux8DzXrZ >>826
2系でやったら違う結果になるぞ
2系でやったら違う結果になるぞ
830デフォルトの名無しさん
2019/03/13(水) 15:57:20.28ID:nAhixTo8 >>826
はい、いいえ。通常defで定義した関数自身を第1引数が表す事はありませんし
ついでにクラスへ定義した関数は、メンバー関数あるいはメソッドと呼びます
またクラス(型)も渡されていません、それはインスタンス(実体)です
オブジェクトとも呼ばれますけど意味が文脈に左右されるので置いといて
クラスメソッド(@classmethod)と修飾したときは、クラスが渡されます
文字列でいうならクラスはstr、'ABC'など具体的な物がインスタンスに相当し
その長さなどがインスタンスの属性と言えます(Pythonだと関数で取得するが
selfは>>795でも回答されるように他言語の(暗黙的に参照可能な)thisと同等で
その宣言の必要性は>>805に対する>>816や>>818の理解…は齟齬が生じる所もあるが
概念的にはメソッドだけども実装的には関数なので、()と呼び出された時ではなく
実体から関数が.で属性参照された時に、結び付けられたメソッドが生成されます
一連のレスからすると、引数が表すものに関数自身(callee)が出てくる辺り
メソッド以前に関数の定義・呼び出し自体の理解も怪しいのではなかろうか?
関数の操作対象として構造物というか実体が第1引数に渡されているのだが…
はい、いいえ。通常defで定義した関数自身を第1引数が表す事はありませんし
ついでにクラスへ定義した関数は、メンバー関数あるいはメソッドと呼びます
またクラス(型)も渡されていません、それはインスタンス(実体)です
オブジェクトとも呼ばれますけど意味が文脈に左右されるので置いといて
クラスメソッド(@classmethod)と修飾したときは、クラスが渡されます
文字列でいうならクラスはstr、'ABC'など具体的な物がインスタンスに相当し
その長さなどがインスタンスの属性と言えます(Pythonだと関数で取得するが
selfは>>795でも回答されるように他言語の(暗黙的に参照可能な)thisと同等で
その宣言の必要性は>>805に対する>>816や>>818の理解…は齟齬が生じる所もあるが
概念的にはメソッドだけども実装的には関数なので、()と呼び出された時ではなく
実体から関数が.で属性参照された時に、結び付けられたメソッドが生成されます
一連のレスからすると、引数が表すものに関数自身(callee)が出てくる辺り
メソッド以前に関数の定義・呼び出し自体の理解も怪しいのではなかろうか?
関数の操作対象として構造物というか実体が第1引数に渡されているのだが…
831デフォルトの名無しさん
2019/03/13(水) 16:27:27.93ID:M+m6pFpm はい(いいえ)
832デフォルトの名無しさん
2019/03/13(水) 17:46:31.02ID:h9UFHds/ そやで、ちゃうで
833デフォルトの名無しさん
2019/03/13(水) 17:48:54.93ID:MhYZY5Aj はいいいえ
834デフォルトの名無しさん
2019/03/13(水) 18:46:52.20ID:gkV5NrkZ ちゃうちゃうちゃうんちゃう
835デフォルトの名無しさん
2019/03/13(水) 19:03:05.32ID:jL6M634A def yes(arg= None):
____print()
____print()
836デフォルトの名無しさん
2019/03/13(水) 19:58:39.06ID:26FDLpbf hoge = "ほげほげ!"
if hoge == "ほげほげ":
print("ほげほげ!)
else:
pinrt("げほげほ!")
if hoge == "ほげほげ":
print("ほげほげ!)
else:
pinrt("げほげほ!")
837デフォルトの名無しさん
2019/03/13(水) 20:00:19.07ID:Ux8DzXrZ >>836
”がたりてない
”がたりてない
838デフォルトの名無しさん
2019/03/13(水) 20:21:08.59ID:1Wup6Az1 Pythonはswitch文が無いのが不満だったけど辞書使えば同じ様な事が出来ると最近気づいた
一番はswitchが必要になるロジックを組まない事だろうけど
一番はswitchが必要になるロジックを組まない事だろうけど
839デフォルトの名無しさん
2019/03/13(水) 20:32:12.62ID:Z4mQGBB0 ↑selfについて回答ありがとうございました
840デフォルトの名無しさん
2019/03/13(水) 20:34:50.72ID:Z4mQGBB0 class className():
def __init__(self, strA, strB):
self.str1 = strA
self.str2 = strB
test = className("Hello", "World!")
print(test.str1)
print(test.str2)
まだselfの意味について理解できていないので教えてください
クラスをインスタンス化したときに引数を設定することでinitが呼び出され、hellwとworld引数が、str1とstr2に代入されるということだと思います
この場合のselfはどんな役割をしているのですか?
selfをはずすと動作はしないようです
init関数自身とは?
def __init__(self, strA, strB):
self.str1 = strA
self.str2 = strB
test = className("Hello", "World!")
print(test.str1)
print(test.str2)
まだselfの意味について理解できていないので教えてください
クラスをインスタンス化したときに引数を設定することでinitが呼び出され、hellwとworld引数が、str1とstr2に代入されるということだと思います
この場合のselfはどんな役割をしているのですか?
selfをはずすと動作はしないようです
init関数自身とは?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★4 [BFU★]
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★3 [BFU★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 【硬貨】500円だと思ったら「500ウォンが入っていた」価値は約10分の1 全国で飲食店などで“500ウォントラブル”相次いで報告 [ぐれ★]
- 植田日銀総裁 「円安進行が物価高を起こしている」 ★4 [お断り★]
- 【実況】博衣こよりのえちえちホロ分かり手クイズ🧪🏴‍☠🌸 ★3
- 【高市悲報】中国「国連安保理の許可なしに日本を攻撃可能だ」★2 [115996789]
- 高市政権高官「ロケットスタートできたよ!」⇦第二ブースター切り離して軌道修正か!? [545512288]
- 【ぺこ専🐰】なんG 兎田ぺこら突発配信実況スレ🏡【ホロライブ▶】
- 【電脳脅威】アサヒ、ランサムウェアからの回復は来年2月!貴社も最早他人事では無い脅威。高市率いる日本国政府も大丈夫か? [219241683]
- NHKニュースウオッチ9「日本側は対話にオープンな姿勢で安定した日中関係を築きたい考えなのに中国が意固地で糸口が見いだせない」 [904151406]
