Pythonのお勉強 Part73

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ f610-G7il)
垢版 |
2024/06/06(木) 08:48:10.07ID:DsazphEm0
!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のお勉強 Part72
https://mevius.5ch.net/test/read.cgi/tech/1703659345/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
2024/08/16(金) 22:28:01.36ID:xH5s9xm90
冷静に考えると、キーボードカタカタと人生の半分以上を
コーディングに費やす人間がこれから先当たり前になるのって
人類史上、初なんだろうな
まぁ近い将来カタカタする必要なくなる世界線もあるだろうけど
2024/08/16(金) 22:38:18.96ID:sAC4Fqoe0
独自の参照渡しを参照渡しの定義として語る人は何なんだろう
CS勉強してないとこうなるのかな
2024/08/16(金) 22:40:29.02ID:Lkm5DKgc0
元々参照渡しという言葉があったのに、
C++が新しい参照渡しを追加したからややこしくなっている
値渡しと参照渡しの二択の世界で、別のアドレスにコピーして渡すかポインタを渡すかの違いだった

C++で同じアドレスを指す別の変数の書き方が導入された
*pVar としなくても、Var のままで取り扱えて便利
やってることはポインタ渡しと同じ
2024/08/16(金) 22:50:59.65ID:Lkm5DKgc0
pythonの場合は、f(y)を呼ぶと、xにはyというオブジェクトが入っている
それだけの話なので、xに新しいオブジェクトを入れてもyには何の影響もない

C++だとxはyという変数の別名になる
だから、xに行った操作はyにも影響する
2024/08/16(金) 23:28:02.02ID:DX07HNt80
最近どこかで見た話だと思ったら
くだすれで2ヶ月前にあった話だった
こいつ全く学習してないな・・・
2024/08/16(金) 23:34:33.12ID:Lkm5DKgc0
「参照の値渡し」という語がうまいこと言ってるかと思えるかというと
全然そんなことはなくて、意味不明すぎる
これがしっくり来る日は永久に来ないだろう

オブジェクト渡しでええやん
551デフォルトの名無しさん (ワッチョイ 6d0e-u7mq)
垢版 |
2024/08/17(土) 00:00:36.88ID:K84lbgy40
C風に言えばポインタの値渡し
2024/08/17(土) 02:15:20.99ID:FbxJBc5j0
perlだとリファレンス/デリファレンスとか実体参照って言うな
これはわかりやすい
2024/08/17(土) 04:17:21.85ID:oNvrieZ10
>>550
 519だが、
copyの違いじゃなくて、
どういう用途に使われるのかを聞いたんだが、
トンチンカンなバカレスしか返ってこない…
2024/08/17(土) 04:58:48.74ID:jNc9Eb8A0
>>549
俺流参照で理解しといたらいいんじゃない?
どうせニートがかじってるだけなんだろうし
2024/08/17(土) 05:00:58.90ID:eDPa81400
https://i.imgur.com/x4pG7y4.png

intやfloatやstrのような値っぽい変数を渡すと、関数の中でそれを破壊しても呼び元では保存され、
listやdicのようなポインタっぽい変数を渡すと、副作用を持たせることができる
まるで、typeを見て値渡しと参照渡しを切り替えているような、、、

ここに、プログラムなんか全く知らない文系の名探偵を連れてくる
名探偵: 値が保存している関数の処理は全て、"x = "の形式をしている

これが正解であり本質である
2024/08/17(土) 05:19:55.19ID:eDPa81400
値とリストの中間みたいなstrでは顕著で、
str.replace() で置換後を返すんじゃなくて破壊的に置換してくれよとか、
str[0] = ' ' みたいにリスト的に扱わせてくれよと思ってもそんな手段は無い

イミュータブルがイミュータブルなのは、ミュータブルな処理が言語仕様のどこにも無いという
悪魔の証明みたいな方法で実現されている
必然的に、イミュータブルなオブジェクトの入った変数の変更は、新しいオブジェクトへの変更になる
2024/08/17(土) 06:42:25.04ID:xfy35KhQ0
組み込み関数や標準ライブラリが非破壊・破壊で統一感ないのは
互換性のためだからどうしようもないけど
変数のアサインはシンプル動作で誤解しようがない
イミュータブル・ミュータブルにちがいはなく
イミュータブルは獲得時に同じ実体(id)を返すってだけ
558デフォルトの名無しさん (ワッチョイ 498e-gw8m)
垢版 |
2024/08/17(土) 07:30:01.44ID:S6E7v25U0
馬鹿は用語だけ覚えて理屈を理解しないからいつまで経っても馬鹿なまま
プログラミングだけではなく世の中の真実がこれ
559デフォルトの名無しさん (ワッチョイ 7197-hgB2)
垢版 |
2024/08/17(土) 08:05:31.14ID:aGgOhja70
>>555
3ヶ月でいいからごたくを並べる前にCとC++でコード書きなよ。スッキリするから。
560デフォルトの名無しさん (ワッチョイ 6db8-u7mq)
垢版 |
2024/08/17(土) 08:08:33.52ID:K84lbgy40
>>553
この質問についていえば、個人的にはcopyを使う場面ってあまり無いと思う
561デフォルトの名無しさん (ワッチョイ 0931-EAYk)
垢版 |
2024/08/17(土) 08:56:53.76ID:NsTQR03i0
スマホゲームでレア鉱山というのが沸くんだが
それを内部的に沸いたら即取るみたいなプログラムを
教えてください。

お願いしますぺこり
2024/08/17(土) 08:58:23.47ID:oNvrieZ10
>>560
まずは調べろ
的なバカレスが多いね…
2024/08/17(土) 09:46:14.10ID:LklgFq+T0
質問者から見てバカレスに思えるレスが多数つくのは質問内容や質問の仕方がそれ以上にバカっぽいからなんだぞ
反省しろよ
2024/08/17(土) 11:04:30.43ID:eDPa81400
https://i.imgur.com/LR4dCLW.png

数をイミュータブルとする為に、pythonでは全ての数に対して
対応するオブジェクトのidが予め設定されている
なんとなく数学的センスで全ての数なんて相手にしたら無限にメモリが要りそうに思うけど、
何のことはない、
intオブジェクトであることを示すbit列 + intのbit列表現そのもの
で実現できる
python2は本当にそんな感じで、3になって動的にbit数が変わるようになった
2024/08/17(土) 14:09:06.79ID:jNc9Eb8A0
>>553
逆にcooyがわからない理由が不明なんだけどw
例えば整数のリストとか普通にコピーしたくならんか?
そしてコピーした配列の一部だけを書き換える
2024/08/17(土) 14:17:24.07ID:ReFbJvTn0
だいたいメソッドのほうの.copy()で十分だから
copy.copy()の使いどきはあるのかよくわからない
immutableとmutableを意識せずにコピーする用途なんてあるかな
2024/08/17(土) 14:18:31.35ID:SZXysGd00
>>564
馬鹿につける薬はなさそうだなw
2024/08/17(土) 15:31:12.95ID:eDPa81400
https://i.imgur.com/LjROLoj.png

strの場合はそんなに厳密ではない
リテラルに書けば同じidになるけど、演算結果が同じになったとしても
わざわざ同じidに集めたりはしない
2024/08/17(土) 16:21:00.49ID:dSpnymJm0
>>566
任意のオブジェクトをシャローコピーしようとするのがcopy.copy()
基本的にはmutable用
どの型かを意識せずに汎用的にコピーしたいときに使う

copy()メソッドを持つのが確実なら.copy()を呼べばいい
copy.copy()も例えばlistが渡されたら内部的にはlist.copy()を呼んでる
2024/08/17(土) 17:39:52.82ID:oNvrieZ10
>>565


それをやる意図は?
目的は?
571デフォルトの名無しさん (ワッチョイ 7feb-/7EV)
垢版 |
2024/08/18(日) 00:56:03.56ID:qMq0AqVM0
>>544
Pythonの関数の実装が、ただのプログラムのジャンプのような説明になっているんだよ。
572デフォルトの名無しさん (ワッチョイ 7feb-/7EV)
垢版 |
2024/08/18(日) 00:59:10.22ID:qMq0AqVM0
>>569
Pythonそのものがマシン語、アセンブラでいうところの呼び出しになっていない可能性がある。

関数が後付けだったせいで、コード上の見た目が関数という別のプログラムに見せかけているだけかもしれない。
2024/08/18(日) 01:01:46.95ID:z4/qydmG0
折角中身を隠してあげてるのにCPythonでの実装を知りたがる
でも結局、CPythonのソース読むのが理解の最短距離
2024/08/18(日) 01:14:18.28ID:mCdxu7x30
コピーの深い浅いにかんしては、
多次元リスト(リストを要素とするリスト)でどうなるかということを考えると、
違いはそんなには混乱しないとは思うんだけどね

シャローコピーはスライス式で(意識することなく)作成されることが多いかも
2024/08/18(日) 01:28:14.09ID:z4/qydmG0
何の為にコピーするのか、を考えると、浅いコピーで十分なケースが想像できないんだよな
リストの削除や追加をしたいだけで、要素の中身についてはノータッチな処理
何それ
576デフォルトの名無しさん (ワッチョイ 7feb-/7EV)
垢版 |
2024/08/18(日) 02:28:48.09ID:qMq0AqVM0
このスレは初心者だから、データの大きさを気にしてないんだろうな。
2024/08/18(日) 05:45:04.91ID:ucdOco2s0
Pythonのコピーについて調べてみて俺もあまり意識せずにリストのコピーとかしてたけど、コピーしたあとにコピーもとをいじくることってないから別に気にせんでいいなって思った
まぁでも知っておくのは大事やね
2024/08/18(日) 06:56:50.44ID:JrXKrbOQ0
>>564
-500とかどうなんの?
2024/08/18(日) 09:20:21.58ID:SIlzIa7v0
>>577
519だが、
結局、
誰からもまともなレスが無いという…
2024/08/18(日) 10:00:51.35ID:LYouUNCa0
Pythonでスクレイピングするならライブラリは何がおすすめ?
速度が遅いのは嫌だな
2024/08/18(日) 10:57:09.07ID:OzCF4tGS0
>>575
519のレスとかこのレスを見るとシャローコピーを理解してるようには全く見えないんだよね
sortedやreversedだったりスライス([:])だったりlist comprehensionが返すリストは基本的に全部シャローコピーだよ
2024/08/18(日) 11:59:36.35ID:SIlzIa7v0

これ

こういう内容が無いゴミレス
2024/08/18(日) 12:13:23.41ID:z4/qydmG0
参照するつもりしかないけど、処理が別のオブジェクトを生成するから、
どうやってもシャローコピーになるというだけの話

壊す気満々でコピーを作ってるんだったら、シャローコピーでは足りないだろ
2024/08/18(日) 12:40:36.98ID:49joGH2n0
>>579
ついてるだろw
2024/08/18(日) 12:43:36.28ID:OzCF4tGS0
>>583
ほら、やっぱりわかってないじゃん
下手な自演する時間があるならまずは基礎を勉強したら?
2024/08/18(日) 12:47:11.94ID:49joGH2n0
>>579
オブジェクトを共有したい時はコピーでいい
もしくは特定のオブジェクトを差し替えるときに
他のメンバーだけコピーしたいとき
587デフォルトの名無しさん (ワッチョイ 7f24-rgSo)
垢版 |
2024/08/18(日) 13:07:35.94ID:qMq0AqVM0
こんな感じでバッチ処理を実装して数GBも使い果たし、メモリ不足にさせるのがいまどきのベテランプログラマー。
2024/08/18(日) 13:51:01.41ID:SIlzIa7v0
>>585

こういうバカのゴミレス
2024/08/18(日) 14:00:36.90ID:z4/qydmG0
そのままコピペして、物理学のスレとか国際政治学のスレとかに貼り付けても万能に使える
要は何も判ってない奴が謎の理由で何か書きたいだけ

判ってる人の指摘は1行というか1ワードなんだよな
適切なタイミングで必要なことだけを指摘する
短ければ短いほど強力
2024/08/18(日) 14:01:03.05ID:9iBzwKAza
中身あるレスしたらダンマリなんだけどw
おーい>>519>>579
俺にレスして欲しかったんだろー?
俺はレスしたくはなかったけどなー
2024/08/18(日) 14:13:49.37ID:SVV7jetg0
>>575
俺もそう思う
ミュータブルの意味が不明
特に統計処理

関数作って行列渡したら元が変わりましたとか
これよく統計で使ってんな
2024/08/18(日) 14:16:03.28ID:SVV7jetg0
>>575
統計で複数変数のデータセットがあって
既存の変数を加工して合成変数を追加する、とかかな
それにしても元の行列変わるリスクは負わせたくないわ普通
それでタプルとかあるのかもしれないけど
そもそもミュータブルなのがダメ
2024/08/18(日) 14:19:15.83ID:SVV7jetg0
積極的にミュータブルさせたい時は
perlなら実体参照使うけど
構造体が深くなるにつれコードがぐちゃぐちゃになってくるから
pythonの方がマシかもしれないけど
デフォルトでミュータブルなのはやばいと思う
2024/08/18(日) 14:26:22.25ID:49joGH2n0
流石にデフォルトでディープコピーは遅すぎるだろ
数万要素のテンソルコピーしたら終わるぞ
2024/08/18(日) 14:29:56.97ID:9omRSoe40
作るもん無くなって暇になった
専業でもないけどなんか収益化に繋がりそうなお題くれ
2024/08/18(日) 14:36:33.49ID:z4/qydmG0
根本の問題に戻ってくるな
コピーは破壊するけどオリジナルは保存したい処理なんてあるの

殆どのケースは、
・参照しかしないからシャローコピーで十分
・変更するけどオリジナルも同時に変更される前提
のどちらか

コピー側だけ変更するというのは、似たようなデータの二重管理をしてる訳で、
何かアンチパターンをやってる気がする
597デフォルトの名無しさん (アウアウエー Sa7f-9uNt)
垢版 |
2024/08/18(日) 14:50:10.51ID:tu42Sbmia
>>555
つまらん探偵ごっこなんてしてる暇があるなら
PyObjectのソース観ろ
それで終了するから
598デフォルトの名無しさん (アウアウエー Sa7f-9uNt)
垢版 |
2024/08/18(日) 14:51:51.47ID:tu42Sbmia
>>558
ほんそれ
599デフォルトの名無しさん (ワッチョイ 7f54-aWDb)
垢版 |
2024/08/18(日) 15:05:37.22ID:GAYaiWBg0
>>596
いくらでもあるでしょ
2024/08/18(日) 15:08:54.32ID:SVV7jetg0
変更して元の行列と比較とか普通にあるぞ
2024/08/18(日) 15:16:22.68ID:49joGH2n0
>>596
木構造とかグラフ構造丸ごとコピーしたことあらず?
差分計算とかそれなりのアルゴリズム書いてたらいくらでも起きるよ
2024/08/18(日) 15:17:02.64ID:SIlzIa7v0
>>596
519だが、
ほんと、
バカレスしか返ってこないよね…
2024/08/18(日) 15:18:16.40ID:SIlzIa7v0
>>602
あ、
でもTransformerを作ったときにあったかな…
2024/08/18(日) 15:22:26.84ID:49joGH2n0
>>602
おーいバカしか言ってねえぞw
バカはどっちだ?
2024/08/18(日) 15:23:47.91ID:49joGH2n0
>>603
おーい自演失敗してるぞ
2024/08/21(水) 01:13:03.16ID:h1OPwVXx0
初心者質問で申し訳ないんだが
文字列はシングルクオートとダブルクオートどっちでやってる???
2024/08/21(水) 07:54:08.92ID:7azkFdqA0
r'"C:\Program Files\dotnet\dotnet.exe"'
みたいなことしたいしな
等価といいつつ、よそのシステムで'が使えないなら、python側で使っとくのがお得
2024/08/21(水) 10:34:49.22ID:BfmcUfOua
フォーマット文字列使うときとかは
a='"A"'
b='"B"'
t1 = f'"{a}" & "{b}"'
t2 = f"\"{a}\" & \"{b}\""

大抵2,3段ネストまでなら耐えられるし、そんなに使わないので
基本シングル使ってる
609デフォルトの名無しさん (ワッチョイ ff2a-hb/w)
垢版 |
2024/08/21(水) 13:32:05.73ID:y4n1hfO50
必ず """"6重引用符(triple double quotes)"""" て猛者はいないのか。
2024/08/21(水) 14:54:06.77ID:9csNguco0
今自作言語のパーサーをPythonで試作してるけど
IDEにレポートできる形式で
複数行にまたがるトークンのパースの面倒さを体験してるから
トリプルクォートは使用をためらう
2024/08/21(水) 15:00:04.91ID:YQ8craup0
関数内で引用符使うとき関数分のインデント水増しされるのすげえモヤモヤするよな
2024/08/21(水) 15:26:37.08ID:9csNguco0
IDEのエディタが最小限の状態管理しかしないから
基本インデント維持で行末がコロンならインデント増やすっていう
簡素なシステムが多い
2024/08/21(水) 19:35:23.85ID:7azkFdqA0
perlで'がそのまま"だと変数の内容が展開される
という仕様だったので、基本は'だった
pythonにf文字列が追加されてからはどうでもよくなった
black通すと"にされる
2024/08/21(水) 20:00:58.88ID:tw7Y79Wx0
そういえば、エスケープのためのバックスラッシュも複数重ねることが必要なことがあるけど
シェルスクリプトでsedを使うといい加減にしてくれっていうくらい必要になって流石に嫌になった
pythonのraw文字列はほんと助かる
2024/08/21(水) 20:14:00.79ID:7azkFdqA0
rawはwindowsのパスを書く時にバックスラッシュをそのまま書きたくて使うことが多いけど、
バックスラッシュで終わるパスがrawでも書けないっていう
2024/08/21(水) 21:08:18.62ID:oFOq2OZ40
>>613
perlのやつ非常にわかりやすい
2024/08/21(水) 21:15:04.72ID:7azkFdqA0
その代わり、全部の変数に$付けないといけないけどな
あの$まみれコードはやっぱり見苦しい
618デフォルトの名無しさん (ワッチョイ 7fad-rgSo)
垢版 |
2024/08/21(水) 22:02:22.40ID:6l3+xVC20
>>606
他のプログラミング言語ではダブルクォーテーションが普通なのでダブルクォートが無難。

シェルスクリプトだとシングルクォーテーションが普通だが、ダブルクォーテーションでくくると文字列という解釈になる言語が多い。

日本語でも英語でもダブルクォーテーションが言葉の括弧書きになる。

シングルクォーテーションは文字列ではなく、文字を表すときに使う言語があるので、高水準言語では文字列はダブルクォーテーションをくくるのが常識レベル。
619デフォルトの名無しさん (ワッチョイ 7fad-rgSo)
垢版 |
2024/08/21(水) 22:04:21.99ID:6l3+xVC20
ネット記事に頼るのではなく、古いものを含めていろんな書籍でどう書かれているのか見比べることが重要。
620デフォルトの名無しさん (ワッチョイ 9f5a-xhLv)
垢版 |
2024/08/21(水) 22:10:45.48ID:7GYl+SWt0
>>606
初心者でどっちがいいかわからないならダブルクオートがおすすめ
pythonやJSでは違いがないとか、C系言語では違いがあるとかわかってきたならシングルクオートかな
621デフォルトの名無しさん (ワッチョイ 7fad-rgSo)
垢版 |
2024/08/21(水) 22:15:19.66ID:6l3+xVC20
Excel VBAも知らねえのか?
622デフォルトの名無しさん (スプッッ Sd1f-mOZh)
垢版 |
2024/08/21(水) 22:17:54.09ID:/wQtpV98d
確かに
ダブルクォーテーションが好きなのは低所得者層、シングル使ってるのは上の層って感じ
2024/08/21(水) 22:21:32.21ID:aRK1aYWv0
C/C++開発者は低所得
たしかにビジネス感覚がズレてはいそう
624デフォルトの名無しさん (ワッチョイ 1faf-pbdr)
垢版 |
2024/08/21(水) 22:40:00.03ID:RAXud0H40
ruffでフォーマットするとデフォルトでダブルクォーテーションになるから自分はそちらに統一してる
モダンなツールがそちらをデフォルトとしてるんだし、シングルに拘る必要もないと最近思い始めた
(もちろんツールの設定でシングルにもできるので、そちらが好みの人はそちらでも良い)
625デフォルトの名無しさん (ワッチョイ 7fad-rgSo)
垢版 |
2024/08/21(水) 22:41:14.56ID:6l3+xVC20
Pythonが作られた時代はダブルクォーテーションとシングルクォーテーションの混在時期だが、ダブルクォーテーションを積極的に使ったのはマイクロソフト社。

混在が混乱を招くという発想でシングルクォーテーションに統一した言語はもっと前からあるが。
626デフォルトの名無しさん (ワッチョイ 7fad-rgSo)
垢版 |
2024/08/21(水) 22:41:53.27ID:6l3+xVC20
>>624
意味が変わることがあるのを知っているのか?
2024/08/21(水) 22:47:54.59ID:7azkFdqA0
Libにあるいろんな他人のコード見てると、'が多数派なんだよな
print用の文字列は"で、引数は'だったり
謎の使い分けがある気がする
2024/08/21(水) 22:51:37.29ID:CS+KsOFL0
こういうのはまずPEP8を見ないといけない(どっちでもよいと書いてあるけど)

String Quotes
In Python, single-quoted strings and double-quoted strings are the same. This PEP does not make a recommendation for this. Pick a rule and stick to it. When a string contains single or double quote characters, however, use the other one to avoid backslashes in the string. It improves readability.

For triple-quoted strings, always use double quote characters to be consistent with the docstring convention in PEP 257.
2024/08/21(水) 23:04:44.31ID:onVNs5El0
日本語キーボードだとどっちもShift必要だけど、英語キーボードならシングルクォートは1キーで済むしな
630デフォルトの名無しさん (ワッチョイ 9fa9-9uNt)
垢版 |
2024/08/21(水) 23:05:37.93ID:8CjSa52E0
文字列にシングルクォートかダブルクォートはでシングルクォートどっち使うか
これ結構色んなとこで聞いたことあるんだけど、シングルの方が書きやすいだった
英語配列のキーボード使い始めたらその理由実感できた
631630 (ワッチョイ 9fa9-9uNt)
垢版 |
2024/08/21(水) 23:09:25.20ID:8CjSa52E0
>文字列にシングルクォートかダブルクォートはでシングルクォートどっち使うか
文字列にシングルクォートかダブルクォートどっち使うか
すいません、ちょっとバグってました
2024/08/21(水) 23:21:36.60ID:7azkFdqA0
全角のダブルクォーテーションマークは開きと閉じでコードが違う
“”(201C, 201D)
〝〟(301D, 301F)
〝〞(301D, 301E)
633デフォルトの名無しさん (ワッチョイ 1faf-pbdr)
垢版 |
2024/08/21(水) 23:31:15.57ID:RAXud0H40
>>626
文字列中にダブルクォーテーションを使う場合はシングルを使う、といった話なら分かってる
あと DocString はダブルが一般的
それ以外の通常の文字列だとシングルとダブルに違いは無いよね?
2024/08/21(水) 23:34:50.10ID:7azkFdqA0
docstringはトリプルじゃないの
逆にそこくらいしか使わない
2024/08/21(水) 23:42:23.11ID:7azkFdqA0
実際にはdocstringを丁寧に書くこともなくて、docopt用なんだけど
2024/08/21(水) 23:44:03.07ID:r25t95e50
コピロットとかじえみにのプログラムコードエラー吐きすぎ
637デフォルトの名無しさん (ワッチョイ 1faf-pbdr)
垢版 |
2024/08/22(木) 00:00:06.37ID:JUiFuZPI0
>>634
基本的にはダブルクォート3つでありシングル3つは使わない、という意図で書いた
例えばDocStrgngを生成するVS Codeの拡張機能なんかでも、ダブル3つは反応するけどシングル3つは反応しない
文字列値はシングルとダブルどちらでも良いけど、DocStigngは明確にダブルの方が良いと思う
2024/08/22(木) 00:16:00.81ID:dqd7XRR/0
mac/win問題あるよな
コーテーション
2024/08/22(木) 00:17:08.85ID:dqd7XRR/0
ダブルコーテーションの文字"の高さが揃ってるからダメなんじゃないって思う
ちょっと上下にずらして欲しい
640デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 01:06:26.79ID:0OofYQEx0
>>628
それは最初に作ったときの仕様がそうだからだ。他のスクリプト言語の影響を受けている。

自由に使うのはかまわないが、コーティングにルールがないのはダメなプログラマー。
641デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 01:22:57.56ID:0OofYQEx0
>>633
SQLの世界ではシングルクォーテーションだから、SQL文字列を作成しようとするとシングルクォーテーションはすぐに面倒なことになる。

しつこすぎだが、高水準言語はダブルクォートテーションでほぼ統一されている。
SQLではシングルクォーテーションで統一されている。

シェルスクリプトでは意味が変わることがあって同じではない。

Pythonが出来損ないのプログラミング言語とわかっていないようだが、どちらでもよいというのは統一できなかった歴史があるからだ。

Pythonはシェルスクリプトと似た使い分けがある。
UNIX・Linuxの世界ではシングルクォーテーションはくくった中身の展開する、ダブルクォートテーションは中身を展開しないというルールがなんとなくあり、外部のプログラミング言語やライブラリがバラバラであるためにPythonもフラフラしているだけ。

見ているサンプルがどっちつかずなのは、どっちつかずの悪いサンプルにすぎない。
プロはどっちつかずのコーティング規約など作らない。

Pythonは全体的にコーティング規約を作らないとバラバラになるクソ言語。
642デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 01:24:59.98ID:0OofYQEx0
初心者スレならともかく、Pythonの言語仕様がよくないと気づかないようであれば、他の高水準言語を先にやった方がいい。
643デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 01:25:42.34ID:0OofYQEx0
PythonはPerlと同じクソの道を進んだクソ
644デフォルトの名無しさん (ワッチョイ 7f5b-rgSo)
垢版 |
2024/08/22(木) 01:31:52.11ID:0OofYQEx0
Pythonでは変数名をアンダーバー区切りで命名するように推奨しているが、無視しているやつも多いしな。
他のプログラミング言語の慣習を持ち込むやつは必ずいるからコントロールが難しい。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況