1 名前:デフォルトの名無しさん mailto:sage [2021/11/12(金) 07:48:11.11 ID:vp8lzav70.net] !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オフィシャルサイト www.python.org/ ◇まとめwiki ttp://python.rdy.jp/ ●関連スレ● 自称初心者は↓へ 【まず1嫁】くだすれPython(超初心者用) その55 https://mevius.5ch.net/test/read.cgi/tech/1633070807/ 〇前スレ〇 Pythonのお勉強 Part65 https://mevius.5ch.net/test/read.cgi/tech/1621749112/ 次スレの建立は>>985 が挑戦する。(980通過して24h後も落ちなくなった) VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
116 名前:デフォルトの名無しさん [2021/11/22(月) 12:23:27.94 ID:vmkVXbGEF.net] if a is not None: if a not is None: if not a is None: Python は書き方が一つしかない()っていったのは誰?
117 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 12:28:55.98 ID:8fUDDfEEd.net] 英語文法に強いと#1しかあり得んとなるが 否定文でこけた経験があると、どうしても頭に否定書きたくなってしまう なんなら否定自体書きたくなくなる
118 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 12:42:04.92 ID:7Z6oy9Mm0.net] そこでunlessですよ
119 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 13:10:59.47 ID:z3oVlEgz6.net] if a:
120 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 13:58:34.46 ID:WOttMYR/0.net] 変数hogeに値がある場合はfugaにhoge(の値)を代入したい場合 if文や条件式を使わずに表現する方法ってある? # python hoge = "piyo" fuga = hoge if hoge else "" bashの変数展開みたいな書式ないよね # bash hoge="piyo" fuga=${hoge:-""}
121 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 14:08:40.76 ID:7Z6oy9Mm0.net] orは?
122 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 15:03:17.50 ID:8fUDDfEEd.net] それこそwysiwygの精神に反するってすぐ分かりそうなもんだけどな
123 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 15:12:56.63 ID:PHd8OvUid.net] Python初心者です https://teratail.com/questions/251676 このページを参考にBytesIOを使おうと考えています a = np.load(BytesIO(binary)) このように使った場合、BytesIOは不要と判断されて開放されるのでしょうか? https://docs.python.org/ja/3/library/io.html The buffer is discarded when the close() method is called. とのことで、 stream = BytesIO(binary) a = np.load(stream) stream.close() としたほうが良いのでしょうか?
124 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 15:24:31.25 ID:XQq90Aj30.net] >>123 IOBaseの説明の対比でそう書いてるだけで GCが働くからclose()は必須ではない
125 名前:デフォルトの名無しさん [2021/11/22(月) 15:27:18.74 ID:sf/6XMlW0.net] with BytesIO(binary) as stream: __a = np.load(stream) withブロックを抜けるとcloseされるから安全
126 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 16:09:57.46 ID:7Z6oy9Mm0.net] withってなんか雰囲気で動いてる気がする
127 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 16:25:58.98 ID:v4k6kYue0.net] >>121 なるほど、or はこんな動作もするんだな ありがとう
128 名前:デフォルトの名無しさん [2021/11/22(月) 16:37:47.59 ID:2MDgP0Vy0.net] >>120 よくわからんけど その例だったらfuga=f’{hoge}’でもfuga=hogeでも同じじゃないの?
129 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 16:54:42.37 ID:v4k6kYue0.net] >>128 変数 hoge に "piyo" が入っているのは一例で、 例えば、hoge がもし None だった場合に ""(空文字)に変換されるので、 そのまま文字列(の一部)として出力したいときに使えるようになる
130 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 16:58:50.36 ID:2MDgP0Vy0.net] あー、hogeが存在してなくてもエラーが出ないのか
131 名前:デフォルトの名無しさん [2021/11/22(月) 19:05:57.15 ID:lkDGIXBn0.net] まあ、自分しか見ないソースならいいけど見ずらくなりそだな、その書き方。
132 名前:デフォルトの名無しさん [2021/11/22(月) 19:36:29.24 ID:5E3QcxihM.net] undefinedに対応できない、Falsyのうっかりとかあるから、褒められる書き方ではないわな。
133 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 20:16:33.77 ID:zjNStOpV0.net] >>124 >>125 ありがとうございます、勉強になりました
134 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 22:48:58.52 ID:XQq90Aj30.net] fuga = hoge if hoge else ‘’ fuga = hoge or ‘’ どっちも’’とか特定の偽しか来ない前提だけど冗長でない分後者を推す 公式にも前者のコード例はたぶんないし
135 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 22:51:07.19 ID:XQq90Aj30.net] ‘’ or ‘’は意味不明やわ。日本語不自由ですまん
136 名前:デフォルトの名無しさん mailto:sage [2021/11/22(月) 23:21:46.71 ID:7Z6oy9Mm0.net] perlの // みたいなのは無いのかな a // b はaがNoneでなければaを、Noneならばbを返す
137 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 00:17:52.93 ID:Ln8GWMq+0.net] >>120 Ruby では、and/or の遅延初期化をよく使う p a = a || 1 #=> aが未定義のnil で偽なので、右辺が評価されて1 a = 2 p a = a || 1 #=> aが真なので、短絡評価で2。右辺は評価されない p b = b && 1 #=> bが未定義のnilで偽なので、短絡評価でnil。右辺は評価されない b = 2 p b = b && 1 #=> bが真なので、右辺が評価されて1
138 名前:デフォルトの名無しさん [2021/11/23(火) 00:44:36.44 ID:xEN2JBOU0.net] >>136 それ x = a if a else b じゃね? なんか避けたいって言ってるやつ
139 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 01:00:51.66 ID:h5ckzt1c0.net] Noneかどうかで判定したいってこと if a だと0でも空文字列でも偽だから曖昧になりがち if a is not None でぜんぜん困らんけどね
140 名前:デフォルトの名無しさん [2021/11/23(火) 02:02:18.19 ID:4MVUDnE90.net] ヌル合体とか欲しいよねPythonにも、
141 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 02:33:06.96 ID:bb25eqH30.net] PEP505は全く進展ないね 3.10には入ると思ってたけど
142 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 10:09:13.49 ID:OzyPSNUz0.net] 値が入っていることを想定しているけれど、想定外にNoneだった時の為のガード みたいな使い方をしたいんだろうけど、 そういうのは明示的にifとかtryで書いた方がいいよな
143 名前:デフォルトの名無しさん [2021/11/23(火) 10:41:32.64 ID:iYWDXWdAM.net] むしろ気をつけないといけないのは、想定外にTrueになってしまうケースだ。 たとえば、昔のDjangoのUserモデルのis_authenticatedは、プロパティじゃなくてメソッドだった。
144 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 13:28:59.61 ID:Cd+od5Ii0.net] Noneも曖昧だからね 単なる未定義なのか空集合なのかエラーなのかNoneそのものなのか ディクショナリー検索等でNoneが帰って来る仕様だがどう扱うか
145 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 13:32:03.52 ID:KM4P0q2w0.net] 結局は>>143 の言うとおりなんよ… 我々はすでに知ってるんよ、中身がNullかどうかに注目した結果 普通にコード書くだけでトライキャッチスパムになってしまうJavaとかいう言語を…
146 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 13:40:48.37 ID:OzyPSNUz0.net] エラーの情報をちゃんと持ってて、ずっと上流の呼び元までそれが伝わる言語あったな なんだっけ 関数は引数に従って値を返します という前提で普通の言語は設計されているけど、 関数は引数に従って値を返します。返さないこともあります でないといけなかった
147 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 13:43:00.09 ID:x4PI0/Sq.net] fastAPIのルーティングでデコレータ使わずに app.add_api_route("/hoge", hoge, methods=["GET","POST"]) な感じで分離してやってみたけど、各リクエストメソッドでバリデーションが異なる時に躓いた このまま共通のhogeだと互いのバリデーションclassが422 Unprocessable Entityを引き起こしてしまうので app.add_api_route("/hoge", hoge, methods=["GET"]) app.add_api_route("/hoge", hogePost, methods=["POST"]) みたいにして新たにhogePost追加するという書き方に。 かと言ってデコレータ使うと @app.get("/hoge") def hoge(): @app.post("/hoge") def hoge(): みたいにせっかくのルーティングの分離管理が二度手間かつ無駄に というジレンマ デコレータ使わない場合 >新たにhogePost追加する というのが無難なのだろうか・・
148 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 15:02:56.49 ID:Vfqk4Xs70.net] validator 内で GET/POST 区別したら?
149 名前:デフォルトの名無しさん [2021/11/23(火) 15:18:14.11 ID:nqaaqo53M.net] app.add_api_route("/hoge", hoge, methods=["GET"]) app.add_api_route("/hoge", hogePost, methods=["POST"]) これでいいんじゃね。関数として分けておけば、 validatorもデコレータ(ファクトリ)にしてみたり、いろいろ柔軟にできる。 @validate('GET') def hoge() @validate('POST') def hogePost()
150 名前:デフォルトの名無しさん mailto:sage [2021/11/23(火) 16:09:24.71 ID:x4PI0/Sq.net] >>148 今はpydanticなvalidor使ってるけどクラス変数の評価前に区別する方法があったりするのだろうか >>149 うんとりあえずはそんな感じでリクエストメソッド分だけ用意することにした d
151 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 00:31:29.22 ID:9nGxCHAd0.net] ★★★★★ 会話をすればポイントが増えてアイテムを買える。 次世代の大型掲示板、メルプラネット。 https://merpla.net/boards/
152 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 04:45:08.04 ID:ZcuSX9hJ0.net] >>144 かと言って最初からOption型やmaybeモナドでライブラリ構成されてもウザいしね
153 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 15:08:35.99 ID:lCK/bdd80.net] 名前と数値がセットになったような内容を扱う時、 セットにしただけのclass作る?
154 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 18:01:26.90 .net] キーと値がセットになった各値をどう扱うかによって インスタンス化するか、辞書にとどめておくか、ライブラリ使うか 変えるかなぁ
155 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 21:37:03.97 ID:YZcLPgmZ0.net] >>153 自分だけしか使わないならダラダラ書くけど 引き継ぐ可能性がある場合はクラスにしといた方がメンテしやすいんじゃないかと思ってる
156 名前:デフォルトの名無しさん mailto:sage [2021/11/24(水) 22:14:50.32 ID:lCK/bdd80.net] リファクタリングの本読んでて、オブジェクト指向の初心者は 小さなオブジェクトを使うのを嫌がる的なことが書いてあって、そんなもんかなと
157 名前:デフォルトの名無しさん [2021/11/24(水) 22:49:34.83 ID:Ph9UZvc+0.net] 通常そういうデータってどっかのクラスのメンバ変数で辞書かnamed tupleじゃねえか? keys:names のみのクラスってどういう状況であり得る?
158 名前:デフォルトの名無しさん [2021/11/25(木) 00:14:54.89 ID:Mg+a9DvFa.net] 集計目的ならdefaultdict
159 名前:デフォルトの名無しさん mailto:sage [2021/11/25(木) 06:32:01.73 ID:kAK1JHHz0.net] >>157 通常と言われてもなあ
160 名前:デフォルトの名無しさん mailto:sage [2021/11/25(木) 07:36:38.15 ID:1AK1NI0N0.net] ただの名前であってキーとは言ってない 重複のない保証はない name[i]とval[i]で管理したいところ valでソートをかける classにせずとも余裕でやれる やれるけど?
161 名前:デフォルトの名無しさん mailto:sage [2021/11/25(木) 07:55:54.60 ID:wc50HyKuM.net] ただの名前をキーと言う奴はもれなくアホだと思う
162 名前:デフォルトの名無しさん mailto:sage [2021/11/25(木) 09:04:00.52 ID:kAK1JHHz0.net] >>160 じゃあその組を管理するRDB風のクラスがいいんじゃないの? #セットという言葉の使い方が気になる
163 名前:デフォルトの名無しさん mailto:sage [2021/11/25(木) 09:23:53.44 ID:1AK1NI0N0.net] いいんじゃない、の加減なんだよな しなければならない / 是非するべき / した方がいい / しなくてもいい / しない方がいい / しない そのへんの温度感が経験で違うのだろう
164 名前:デフォルトの名無しさん mailto:sage [2021/11/26(金) 20:45:55.13 ID:wc7annti0.net] urlopen()をwithで取得してwithを抜けると何が起きるの?
165 名前:デフォルトの名無しさん mailto:sage [2021/11/26(金) 20:48:58.06 ID:s3jo07500.net] シメられる
166 名前:デフォルトの名無しさん mailto:sage [2021/11/26(金) 22:16:46.96 ID:nRTAMUqI0.net] https://docs.python.org/ja/3/library/urllib.request.html#urllib.request.urlopen > HTTP および HTTPS URL の場合、この関数は、わずかに修正された http.client.HTTPResponse オブジェクトを返します。 class HTTPResponse(io.BufferedIOBase) で__exit__()はオーバーライドされてないから受信データにアクセスできなくなるだけ。 意図してる通りだろうけど > より高水準のHTTPクライアントインターフェースとして Requestsパッケージ がお奨めです。 だし、説明が追加されることはなさそう。
167 名前:デフォルトの名無しさん mailto:sage [2021/11/26(金) 22:30:51.87 ID:wc7annti0.net] 何かのリソースが自動で開放されるとかではないのか
168 名前:デフォルトの名無しさん mailto:sage [2021/11/27(土) 18:48:32.12 ID:Ce5RxaUa0.net] pygameってみんな使ってないのか? せっかく二冊ほど読み終えたのに動かそうと思ったら 3.8じゃうごかないとか言われて途方に暮れてるんだが・・・ すなおにゲームはunityつかえってことか・・・・
169 名前:デフォルトの名無しさん mailto:sage [2021/11/27(土) 19:23:42.37 ID:QJDif1Cg0.net] ?
170 名前:デフォルトの名無しさん mailto:sage [2021/11/27(土) 19:29:31.81 ID:IgXLbzKoM.net] >>168 たくさんあるから Python ゲームエンジン で検索して目的に適してるのを選べ
171 名前:デフォルトの名無しさん mailto:sage [2021/11/27(土) 19:45:13.67 ID:JJsR/G8Z0.net] pygameでmidiが取り扱えるんだよな ハノン弾いてリアルタイムで正確さを表示したら面白いと思って ずっと前に作りかけて放り出してある 今ならすぐ作れそう
172 名前:デフォルトの名無しさん mailto:sage [2021/11/27(土) 19:54:52.11 ID:i0YnXTZB0.net] pygame、3.8.10で動くけど?
173 名前:デフォルトの名無しさん [2021/11/27(土) 23:14:16.59 ID:bPwHecSK0.net] pygame2やれ
174 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 00:16:01.67 ID:0Kkbs8iXM.net] >>173 公式によれば3.9も ただメインテナンスはやや停滞なんかね
175 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 00:55:05.96 ID:YY1hk1pY0.net] 色々試したらうごいたわありがとう レースゲーム動かせるわ
176 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 00:55:37.48 ID:YY1hk1pY0.net] 普通にpipでいけたよ
177 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 09:18:19.48 ID:swBDA3nq0.net] Pythonエンジニア認定試験のことってここでも大丈夫ですか?
178 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 09:26:25.30 ID:6NVlX2It0.net] pythonが使いこなせるかどうかの能力なんて、 各種ライブラリのことをどこまで知ってるかだからなあ 言語仕様の部分はすぐに全員カンストするから差が出ない 標準ライブラリに限定して問題作ると、もっと便利な方法があって現実的でなくなる
179 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 09:39:22.33 ID:o94Sh6rb0.net] そうだね そもそもpython自体は簡単だし ライブラリを使いこなす知識の方が重要だよね 認定試験無いよりはマシだろうけど 認知度が低いから結局試験の内容を説明しないとイケないんだよな 情弱処理持ってる方が話は早い
180 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 09:46:54.78 ID:6+AWQcj90.net] >>177 とりあえず質問してみたら?
181 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 14:43:59.37 ID:6NVlX2It0.net] 改行区切りで書かれたファイルがあって、これを改行無しでリストに読み込みたい そして、リストを改行区切り形式でファイルに書き出したい 内包表記で改行を削って、書く時にはjoinで改行付けるとかすればできるけど、 もう一段スマートにやれないかな
182 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 16:14:46.54 ID:TzUvGqBa0.net] フツーにforで回してprintするだけじゃん
183 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 16:22:25.89 ID:6NVlX2It0.net] 読み込み側は、 f.read().splitlines() ですっきり書けた この逆をする関数があればいい リストの各要素を改行で区切って文字列に変換するような関数 ってそれは単にjoinの特殊ケースに過ぎないから、無いのも頷ける
184 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 17:25:05.50 ID:/1mvnnK50.net] 頭悪そー
185 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 17:39:15.04 ID:6NVlX2It0.net] あるべき姿はpickle でもテキストエディタでも開きたいので、jsonとかyamlとか それでも編集しにくいので、どうせリストだしと改行区切りまで落とすと、 スマートな手段が無くなる
186 名前:デフォルトの名無しさん [2021/11/28(日) 17:57:10.63 ID:9rjB7eJM0.net] 自分でjsonEditor作るのは面白いよ。中級クラスのレベルかな。 データも list >> dict >> dict >> list >> list >> dict >>int 見たいにnest構造になってるから編集しようとすると、そこそこ扱いも難しいし。 画面構成から考えれば、いい練習問題になるよ。
187 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 19:57:15.81 ID:Wh0Bw3X30.net] >>180 ありがとうございます! Pythonエンジニア基礎認定試験を受けようと思うのですが、 スッキリわかるPython入門を導入書として使ってからPythonチュートリアルをしようと思うのですが、同じように勉強して合格された方はいますか?
188 名前:デフォルトの名無しさん [2021/11/28(日) 21:05:28.72 ID:jvvYPFKj0.net] > お前は毎朝起きるたびに俺に負けたことを思い出すよ^^ あー、ホンッとに思い出すなあ(笑) キチガイの嘘つきの低レベルFランの、 朝鮮ゴキブリBot君は、 チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な ことはよーくわかったよ。 ホントなにもできない朝鮮ゴキブリBot君! クソチョンw クソチョンはウンコを食べる糞食人種w ゲリ便をじゅるじゅると うまそうに食ってるw
189 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 23:19:25.63 ID:SJI7MgMY0.net] >>181 Ruby なら、配列を出力するだけで、改行区切りになるけど ary = [ "ab", 1 ] puts ary 出力 ab 1
190 名前:デフォルトの名無しさん mailto:sage [2021/11/28(日) 23:28:07.54 ID:6NVlX2It0.net] perlだとこんな感じ デフォルトはスペース区切りなので改行に変更 @a = (ab, 1); $" = "\n"; print "@a";
191 名前:デフォルトの名無しさん [2021/11/29(月) 02:28:05.31 ID:Tbj9SxrO0.net] >>181 writelines()じゃね? https://techacademy.jp/magazine/28281
192 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 06:26:32.46 ID:8tyLAOgdM.net] >>191 writelines(lines) 行区切り文字は追加されないので、書き込む各行の行末に行区切り文字を含ませるのが一般的です。 https://docs.python.org/ja/3/library/io.html って書いてあるからダメでしょ そもそもそのリンク先 text = [ "メロンn", "イチゴn", "みかんn", "スイカn", "ぶどうn" ] なんて書いてる時点で信用できない
193 名前:デフォルトの名無しさん [2021/11/29(月) 09:20:02.45 ID:LowbA3aSH.net] テックアカデミー(笑)
194 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 09:26:34.67 ID:LcIxau/K0.net] pythonの裾野の広さを感じさせてくれるサイトだよな
195 名前:デフォルトの名無しさん [2021/11/29(月) 11:03:42.15 ID:uzcK9QD5a.net] Perlの文法も気持ち悪いな。 シェルスクリプトかよ。 Pythonのやり方はJavaかC++からの輸入だな。
196 名前:デフォルトの名無しさん [2021/11/29(月) 11:04:55.76 ID:Tbj9SxrO0.net] >>192 ダメじゃねえかwすまんこ
197 名前:デフォルトの名無しさん [2021/11/29(月) 11:29:59.53 ID:FdW61dzG0.net] >>193 クソのくせにやたら検索に引っかかってくるからウザイ
198 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 11:37:52.94 ID:pAg5RKMOd.net] テックアカデミーと侍は中学生に書き直させた方がまだ読めるようになるレベルのゴミ
199 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 11:46:02.57 ID:FVbxGJ7fM.net] readlinesやwritelinesで改行コードを扱う方法を提供しないのがPythonクオリティー テックアカデミーをバカにできない
200 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 12:00:17.47 ID:7wd93ooE0.net] 日本語の技術サイトはろくなのがない印象 Pythonに限らないけど
201 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 12:04:08.22 ID:pAg5RKMOd.net] 昔はインスタントPython、インスタントハッキングがjpy公式にあったから そこで初心者は学習できた あと結局pythonは公式ドキュメントとライブラリーリファレンス読み込むことで大抵の問題は解決する 個人的な問題を解決したかったらそれなりにキャリアのある個人ブログ探すのが安定する
202 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 12:16:52.32 ID:BKJFnTwg0.net] >>195 Perlはシェルスクリプトの置き換えが目的そのもので順当 PythonはLuaのようなアプリ内スクリプティングな応用が当初多かったし 記述が簡便なのが特徴じゃない?なんで所々厳格でなくて歪なのが残念な点 というかJavaとは同世代だし
203 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 23:18:44.84 ID:f/Sm4Tcj0.net] Python は、改行コードがめちゃめちゃ難しい。 global newline みたいに自動的に、OS に合わせて変換してくれる、機能はないのか? Ruby では簡単なのに
204 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 23:25:16.24 ID:LcIxau/K0.net] 入力はどんな改行が来てもちゃんと読んで、 出力は今動いてる処理系に合わせて出力すれば、それで問題ないのでは
205 名前:デフォルトの名無しさん mailto:sage [2021/11/29(月) 23:33:33.84 ID:BKJFnTwg0.net] コード上改行はLFで統一できてる。 何も指定せずテキストモードでopenしたらCRLF→LFの変換はしてくるし Windowsコンソールに出力したらLF→CRLFも透過的に行う。 バイトストリーム用にos.linesepも用意されてる。
206 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:02:42.47 ID:uWG/s7m50.net] \nってCRLFのことだと思ってた
207 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:03:41.68 ID:1Yo8WetK0.net] 円得ぬ
208 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:04:10.45 ID:TlXezoe70.net] どなたか >>187 をおねがいします!
209 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:24:38.24 ID:uWG/s7m50.net] まともな検定だったら、本だけ読んで通ると思えない
210 名前:デフォルトの名無しさん [2021/11/30(火) 06:39:04.04 ID:oWvAOz19M.net] >>205 自動なのがかえってめんどくさい。
211 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:49:20.24 ID:uD8YTZMG0.net] >>208 いますよ
212 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 06:52:03.48 ID:uPKcxb4Vd.net] >>211 ありがとうございます! Pythonチュートリアルを読む前の参考書はどんなのを使われました?
213 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 07:02:57.59 ID:uD8YTZMG0.net] >>212 ダラダラ質問小出しにされるのはウザいのでまとめて
214 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 07:09:37.62 ID:uWG/s7m50.net] インタプリタなので仕方ない
215 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 07:17:14.56 ID:uD8YTZMG0.net] じゃぁリストかタプルでちょうだい
216 名前:デフォルトの名無しさん mailto:sage [2021/11/30(火) 07:35:53.88 ID:uWG/s7m50.net] なんでリストが[]でタプルが()なんだろうな 一番使うものが一番普通な方が収まりがいいのに 辞書が{}なのも、別に[]を使っても中にkey:valがあったら辞書と判るのに 中身が無い時に区別付かないけど、そのくらい何とかなるだろ