Pythonのお勉強 Part65

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん (ワッチョイ eb01-+D+D)2021/05/23(日) 14:51:52.02ID:NSupjEI/0
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。

・当スレにRubyのソースコード類を書くことを禁ず
・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
・エラーを解決したいときは、かならず
 エラー文(勝手に省略orスクショうp等の横着禁止)と
 おま環(Pythonのバージョン番号+OS名とバージョン+IDE名)を書け。

★Pythonのソースコードを5ちゃんに直貼はインデントが崩壊するので、
  ↓等のコードうp用サイトに貼ってきてくだしあ。(スクリーンショットをうpる「横着」禁止)
ttps://techiedelight.com/compiler/  Run Code機能あり。
ttp://ideone.com/      デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://codepad.org/      ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数は十分長ーく指定のこと。

◇Pythonオフィシャルサイト http://www.python.org/
◇まとめwiki ttp://python.rdy.jp/

●関連スレ● 自称初心者は↓へ
【まず1嫁】くだすれPython(超初心者用) その53
https://mevius.5ch.net/test/read.cgi/tech/1615846784/

〇前スレ〇 Pythonのお勉強 Part64
https://mevius.5ch.net/test/read.cgi/tech/1600035173/

次スレの建立は>>985が挑戦する。(980通過して24h後も落ちなくなった)
### END of TEMPLATE ###
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured

0952デフォルトの名無しさん (ワッチョイ 323b-FSjO)2021/11/10(水) 13:19:57.22ID:QukxIj6x0
データベースと言うから大仰に構えて当然なニュアンスが漂うけど、
ただのリスト1つでもそんなことするのかと
グローバルにするだけでとてもシンプルに書けるのに

0953デフォルトの名無しさん (ワッチョイ b12c-cRVk)2021/11/10(水) 13:49:39.60ID:hJTDZzkD0
グローバルがそもそもシンプルでねえんだわ
スコープガタガタじゃねーか

0954デフォルトの名無しさん (エムゾネ FFb2-bQ3l)2021/11/10(水) 13:56:36.25ID:/xBD3bqRF
list で良いんだったら書き換え可能だが
def f(x):
x[0] = 3

def hoge():
a = [1, 2, 3]
f(a)
print(a)

0955デフォルトの名無しさん (バットンキン MM62-cRVk)2021/11/10(水) 13:57:18.76ID:YrLahdlqM
まあ
クラス化とか、きちんと引数で渡すとかもせず
色んな領域に同じ名前の変数が生きてて
globalの有無でどっかに何かが入ってしまう
そういう書き散らかしを止める気はないというなら好きにすりゃあいい

バカがひとりでバカやってるだけなら別に害ないし

0956デフォルトの名無しさん (ワッチョイ d963-H2rd)2021/11/10(水) 14:18:11.30ID:eXHawLmR0
問題起きてなかったし書き捨てが多いからあんま考えないでGlobalしてたわ
これからはクラス使うようにするわ

0957デフォルトの名無しさん (ワッチョイ d97d-H2rd)2021/11/10(水) 14:29:52.63ID:17D1Wsta0
使い捨ての小プログラムにいちいちクラス作るのもバカげてると思うんだが

0958デフォルトの名無しさん (JP 0Hc1-cRVk)2021/11/10(水) 14:35:41.41ID:p8NJBIfUH
おぬしの場合はとりあえず
def x(db):
__db.append[zzz]
みたいな関係性の明示をすることと
myvarとかlとかdbみたいな名前をつけない(あるいはトップレベルに唯一ある)ようにするという大前提を守ることをしたほうがよい

これを欠くとクラス化も一時しのぎにしかならないで
1段掘っただけだから結局同じ問題にぶち当たるど

0959デフォルトの名無しさん (ワッチョイ 323b-FSjO)2021/11/10(水) 14:44:35.15ID:QukxIj6x0
classは別に魔法ではなくて、globalではないというだけで、
globalと同様の可読性や保守性のいろんな問題はやっぱり付きまとう

複雑なもんはどうやっても複雑で、言語仕様でどうにかなるものでもない
ということなのかもしれない

0960デフォルトの名無しさん (ワッチョイ d201-CJ6T)2021/11/10(水) 15:02:45.36ID:l5Ahtbnb0
globalと書く必要がない範囲でグローバル変数使う分にはそれほど気にする必要ないよ
雑なimportとかをやらないようにさえしてれば事故る可能性ないから

globalと書く必要があるならクラス化したほうがいい

0961デフォルトの名無しさん (ブーイモ MM96-Iblw)2021/11/10(水) 15:47:01.95ID:oOPwtqhaM
>>937が駄目なだけでPythonが悪いわけではない

それからPython4は永遠に来ないと宣言されてる
2→3の混乱を考えると4は避けるべき、3内で全ての変更は行われるとの御達し

0962デフォルトの名無しさん (ワッチョイ 9201-+aG2)2021/11/10(水) 16:29:55.36ID:GqJmUfwJ0
>>957
使い捨てならいいんじゃね
別に他人に迷惑かけないし

0963デフォルトの名無しさん (ワッチョイ 7297-B9Vr)2021/11/10(水) 16:39:02.58ID:m325nVH90
>>961
逆張り、レスバ目的で書いてるんじゃんないよね
>>937はシステムハンガリアンの例が謎なだけで他は真っ当にみえるから
そういう見解もありなのかと知れた

0964デフォルトの名無しさん (ワッチョイ 8101-cdF1)2021/11/10(水) 17:01:03.65ID:Rkk0NNeP0
挫折したPythonの勉強を再開します

print(“hello,world”)

まで書けるようになりました

0965デフォルトの名無しさん (ワッチョイ 5e46-Q1RX)2021/11/10(水) 17:37:49.85ID:tUiCOioK0
Pythonにグローバル変数は存在しないものと思っていたわ...

0966デフォルトの名無しさん (ワッチョイ 515f-t1IP)2021/11/10(水) 17:39:36.16ID:lWh80EFt0
>>964
これであなたもPythonistaですね

0967デフォルトの名無しさん (ワッチョイ 5e10-F6GX)2021/11/10(水) 18:32:16.57ID:+7kfCCOb0
>>964
よし次は1〜nまで足し算してみよう

0968デフォルトの名無しさん (アウアウウー Sacd-bQ3l)2021/11/10(水) 19:41:12.93ID:VzdAvmBla
print(1+2+3+4+5+6+7+8+9+a+b+c+d+e+f+g+h+i+j+k+l+m+n)

0969デフォルトの名無しさん (ワッチョイ 323b-FSjO)2021/11/10(水) 20:42:31.14ID:QukxIj6x0
pythonはインスタンスの生成と関数呼び出しが同じ形式だけど、
本質的にも関数なの?

0970デフォルトの名無しさん (ワッチョイ d2ad-Iblw)2021/11/10(水) 21:01:44.22ID:pxJ9VPJB0
>>969
二行目がJavascript風の
クラス実体がインスタンスを生成する関数オブジェクト
という意味なら違います

0971デフォルトの名無しさん (ワッチョイ 323b-FSjO)2021/11/10(水) 22:25:22.17ID:QukxIj6x0
a = function_name()
b = ClassName()
よりもnewって書いた方が判りやすいと思うんだけど

0972デフォルトの名無しさん (オッペケ Sr79-TwtK)2021/11/10(水) 22:41:51.55ID:iRMzm+o1r
>>969
クラスは呼び出し可能です。そのオブジェクトは通常、そのクラスの新たなインスタンスのファクトリとして
振舞いますが、 __new__() をオーバーライドして、バリエーションを持たせることもできます。呼び出しに
使われた引数は、 __new__() と、典型的な場合では __init__() に渡され、新たなインスタンスの初期化に
使われます。
任意のクラスのインスタンスは、クラスで __call__() メソッドを定義することで呼び出し可能になります。
class Foo:
  pass
foo = Foo()
foo()

--
一方で第一級関数(ファーストクラスファンクション)としては関数を第一級オブジェクトとして扱うことの
できるプログラミング言語であり、Pythonは「ファーストクラス」として扱えることを目標に作成された。

言語の中のすべてのオブジェクト(数値、文字列、**関数**、クラス、モジュール、メソッドなど)に対して、
名前をつけて、同じように取り扱うことができるようになるということを意味している。関数を変数に格納し
たり、リストの中に並べたり、辞書に格納したり、引数として渡したり、といったことが可能になるのである。

原文:http://python-history.blogspot.com/2009/02/first-class-everything.html
原文投稿者:Guido van Rossum

0973デフォルトの名無しさん (オッペケ Sr79-TwtK)2021/11/10(水) 23:00:08.21ID:iRMzm+o1r
new に該当するものが無いのではなく、object.__new__(Class)が、通常は暗黙的に呼ばれて、それが
classの定義側にあるだけの話です。「判りやすい」と感じるのは個人の主観ですが、ソースコード上で
インスタンスを生成している箇所を(強く意識しており)素早く列挙したいならその通りでしょう。

0974デフォルトの名無しさん (アウアウウー Sacd-bQ3l)2021/11/11(木) 09:04:11.34ID:SpIFedoWa

0975デフォルトの名無しさん (ワッチョイ b533-H2rd)2021/11/11(木) 10:17:45.17ID:0FR2ffWe0
>>969
本質的には関数もクラスと同じくオブジェクトだよ

0976デフォルトの名無しさん (ワッチョイ 12ad-/M7r)2021/11/11(木) 11:35:35.96ID:gd0ckjQ50
GUIの部分だけはC#で作って
GUIのボタン押したらpythonで処理して
結果をうけとって
GUIのtextboxに書き出すとかできますか?

0977デフォルトの名無しさん (ワッチョイ b136-awrp)2021/11/11(木) 11:36:58.94ID:pCDIouh90
Python/Qtではダメ?

0978デフォルトの名無しさん (アウアウウー Sacd-bQ3l)2021/11/11(木) 11:42:38.95ID:mCOYpHbIa
C# から python のプロセス呼ぶ例はいくらでもゴロゴロしてる

0979デフォルトの名無しさん (アウアウウー Sacd-bQ3l)2021/11/11(木) 11:43:30.14ID:mCOYpHbIa
あと毎回プロセス起動する以外に
python 側も常に起動待機状態で
プロセス間通信のサンプルもいっぱいある

0980デフォルトの名無しさん (ワッチョイ 095c-H2rd)2021/11/11(木) 11:54:48.02ID:bGsY3NmK0
>>979
>>python 側も常に起動待機状態で

なにそれ?興味ある

0981デフォルトの名無しさん (ブーイモ MM96-MEiT)2021/11/11(木) 17:31:48.67ID:N8d4DWiKM
>>961
そういうお達しもさ、破壊的変更がみんなが必要だと思ったら破られるんだよ。
お達しを破らないことが言語開発の絶対目的ではないのだから。
まあ、その場合はPython4ではなくて違う名前の言語として再出発かもしれないけどね。

0982デフォルトの名無しさん (ワッチョイ 9e68-+Epa)2021/11/11(木) 19:39:55.44ID:IVQxVLrO0
名前かわってもイソンは残して欲しいなぁ

0983デフォルトの名無しさん (ワッチョイ d2ad-Iblw)2021/11/11(木) 20:01:58.70ID:ge/OkqSu0
>>981
大きな変更の有無じゃなくて
メジャー番号の切り替えがなくなるだけ

0984デフォルトの名無しさん (ワッチョイ 323b-FSjO)2021/11/11(木) 20:08:50.94ID:R6JYOOMm0
番号はどうでもいいけど、後方互換性を無くすような変更はもうしないだろ

0985デフォルトの名無しさん (ワッチョイ 323b-FSjO)2021/11/11(木) 20:24:37.72ID:R6JYOOMm0
class Aristocrat:

0986デフォルトの名無しさん (ドコグロ MMab-AQUW)2021/11/12(金) 05:21:48.73ID:ieOoEHdBM

次スレの建立は>>985が挑戦する。(980通過して24h後も落ちなくなった)

0987デフォルトの名無しさん (ワッチョイ a3ad-RdVS)2021/11/12(金) 06:54:22.84ID:tS35U29Z0
>>984
3の中ですると公言されてる

0988デフォルトの名無しさん (ワッチョイ e33b-7lFM)2021/11/12(金) 07:48:42.54ID:vp8lzav70

0989デフォルトの名無しさん (ワッチョイ 1d6f-4I74)2021/11/14(日) 23:49:27.67ID:o9nMeVTF0
IPythonって流行ってないんかな?対話モードより使いやすくてjupyterより手軽で好きなんだけど

0990デフォルトの名無しさん (ワッチョイ 4bb0-tZCU)2021/11/15(月) 03:20:24.38ID:A9YV+qlK0
Jupyter NotebookはIPython Notebookなんだから「Jupyterは流行ってる」なら「IPythonは流行ってる」を包含してるね
Notebookレイヤーを含まないでコンソールで動かすことを言ってるなら、データ解析系の人には高度な電卓くらいには使われてると思うよ

0991デフォルトの名無しさん (ワッチョイ 7501-p9Jn)2021/11/15(月) 07:01:12.72ID:mG0JBDTp0
https://blog.narito.ninja/detail/159
このサイトの
store = self.store = get_object_or_404(Store, pk=self.kwargs['pk'])
ってところイコール2個あるけどこれなに?

0992デフォルトの名無しさん (オッペケ Src1-Jlay)2021/11/15(月) 07:13:12.96ID:3eTzEir3r
>>991
multiple targets assignment

0993デフォルトの名無しさん (ワッチョイ e33b-7lFM)2021/11/15(月) 08:26:42.21ID:trxoMZbv0
秀丸とコマンドプロンプトでも大して困らないと思うけど、
見栄えがいい以外の本質的なメリットって何かあるの?

0994デフォルトの名無しさん (ブーイモ MM69-D1eI)2021/11/15(月) 10:33:07.40ID:hm0pgJxuM
Jupyter/IPythonとテキストエディタは明確に違う。デバッグしながら書けるという点において。
IPythonはループ書いたりするレベルだけどipynbはいらないなってときに使うなあ。
普通の電卓にはPythonコマンド使ってるw

0995デフォルトの名無しさん (ワッチョイ e33b-7lFM)2021/11/15(月) 13:29:17.97ID:trxoMZbv0
選択した部分だけ実行とかできる?

0996デフォルトの名無しさん (ワッチョイ 0d03-/fak)2021/11/15(月) 13:44:12.34ID:P/PCEOHq0
その場合コンテキストはどうなっててほしいのか

0997デフォルトの名無しさん (ワッチョイ e33b-7lFM)2021/11/15(月) 13:48:40.15ID:trxoMZbv0
選択した部分だけ実行された状態になる
コードにマウスオーバーすると、そのオブジェクトの現在の内容がポップアップする

0998デフォルトの名無しさん (アウウィフ FFa9-09aj)2021/11/15(月) 15:02:44.39ID:i/3H6iLTF
>>993
そだねー

Jupyterは結局毎回restartしてるわ
危なっかしい

0999デフォルトの名無しさん (ワッチョイ 2302-4fXk)2021/11/15(月) 18:59:56.47ID:f2uNQEAt0
次スレ
Pythonのお勉強 Part66
https://mevius.5ch.net/test/read.cgi/tech/1636970383/

1000デフォルトの名無しさん (ワッチョイ 4bbb-hqx1)2021/11/15(月) 19:04:27.08ID:dRz2gq1T0
>>999
あとでお仕置きな

Pythonのお勉強 Part66
https://mevius.5ch.net/test/read.cgi/tech/1636670891/

10011001Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 176日 4時間 12分 35秒

10021002Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php

レス数が1000を超えています。これ以上書き込みはできません。