【まず1嫁】くだすれPython(超初心者用) その56

■ このスレッドは過去ログ倉庫に格納されています
2021/12/27(月) 01:38:10.93ID:GepmXCuJ
当スレに★Python以外のプログラミング言語での回答類を書くべからず★
派生言語はそれぞれ専スレがある(この板にあるとは限らない)ので、そっち池。
「Ruby」「Rails」「某言語では」「クソチョンw」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。

このスレッドは「お勉強」スレのほうには書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を、勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますので、お礼は Python の布教と初心者の救済をお願いします。

★エラーを解決したい場合★は、
  表示されたエラーの全文(勝手に省略やスクショうp等の横着クソ行為禁止)と、
  実行環境(Pythonのバージョン・OSとIDEの種類およびバージョン)をシッカリ書くこと。

Pythonの★ソースコードをそのまま5ちゃんに貼るとインデントが崩れてチヌ★
【【【複数の連続半角スペースはなにもなかったことにされる&タブは普通には入れられない】】】掲示板の仕様なので、
プログラム文は↓等の、いわゆるコードうp用サイトに貼ってこいください。
ttps://techiedelight.com/compiler/  Run Code機能あり。
ttp://ideone.com/      デフォ設定はC用のため、言語選択ボタン押下がピコ手間かも。
ttp://codepad.org/      ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数は十分長ーく指定のこと。

◇Python公式◇ http://www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi

〇前スレ〇 【まず1嫁】くだすれPython(超初心者用) その55
https://mevius.5ch.net/test/read.cgi/tech/1633070807/

次スレたては >>985 あたりが挑戦する。
### END OF TEMPLATE ###
2022/01/04(火) 23:13:45.44ID:IER2ZZly
最小二乗法
2022/01/04(火) 23:46:52.83ID:l7pw94h+
>>34
2次以上の関数でfitさせたほうが本当にいいのか考えた方がいいよ。
何を言っているのかわからなければ、多項式フィッティングについて勉強することをお勧めする。
37デフォルトの名無しさん
垢版 |
2022/01/05(水) 00:25:58.93ID:mIcC+Z88
>>34
np.polyfitのドキュメント読め
3つ目の引数は飾りじゃないぞ
2022/01/05(水) 05:01:24.11ID:TmObc2bo
引数を2以上にして二次関数以上?でyを求めるとかそういうことですかね

x_co=[-1,0,10]
y_co=[-3,0,20]

a,b,c =np.polyfit(x_co,y_co,2)
x = 5
y = a*x**2+b*x+c
print(y)

ここのyは10になってほしいんですが、計算結果は12.272727272727275です

0を堺にして傾きを別々に設定するならやはり
x_co=[0,10]
y_co=[0,20]

x_co=[-1,0]
y_co=[-3,0]
別々の座標でy = axとして計算したほうがいいんですかね
2022/01/06(木) 07:42:16.32ID:ao2M/tK+
>>38
だから36の通りで、フィッティングに対する基礎知識が足りなすぎる。
今回の場合はその通り。
0で分割してやるしかない。
適切な分割個所がわからない場合でもやりようはある。
要はモデルを作り、そのパラメータを求めるということがフィッティング。
分割個所が0とわかってるなら2パラメータの1次フィッティングになるだろうし、分割個所も分かってないが
折れるということまではわかっているなら分割個所も含めた3パラメータ のフィッティングになる。
2022/01/07(金) 17:36:11.67ID:cKWusGB0
そうですか。xの値が0以上かどうかで分岐を作って計算するようにします。
どうもです。
2022/01/11(火) 13:22:37.26ID:08WJfgzC
機械学習で文字認証突破をしてみようとしたのですが
文字以外の模様がある場合の難易度がパないです
所謂ゴミ取りというやつですが、小さいゴミだったり薄いゴミだと簡単に突破できるのですが
例えば後ろに濃い目の線が放射状に走ってるだけで
その線をシャープにして消そうとすると文字も消えるので
急に突破できなくなります
何かいいアイデアはありますでしょうか
自分で考えたのは、そのゴミの配置パターンを機械学習して
その部分をignoreする、みたいな感じですがなかなかうまくいきませんし
パターンが変更された、となると対応コストが高すぎるかなと思います
2022/01/11(火) 13:35:10.43ID:4qGoqi+c
その手のはもうコピペコードで突破できるから最近見かけなくなったな
https://keras.io/examples/vision/captcha_ocr/
2022/01/11(火) 13:39:49.49ID:08WJfgzC
そのコードも試したことはあるのですが
文字の整列がキレイな場合に成功率高かった記憶があります
2022/01/11(火) 15:29:25.95ID:4qGoqi+c
文字の整列が汚いときにうまくいかないなら汚い学習データを使うとか
文字位置だけを検出する前処理(オブジェクト検出)を使う多段処理にするとか
yoloのようなモデルで一気にやらせるとか
2022/01/11(火) 15:30:11.11ID:gisUZ/Sj
今でも機械ではなくて人間がやっているのを
調べるために裏に模様が入った、ガタガタの文字を
入力させるのがあるよね
簡単に突破できるのならもう使われなくなっているはずだよね
それだけ機械でやるのは難しいということだ
2022/01/11(火) 15:45:34.70ID:4qGoqi+c
いやいや。もう見かけないだろ

2018の記事
「CAPTCHA」と呼ばれる“グニャグニャ文字”。これをGoogleが使わなくなった理由とは
https://www.itmedia.co.jp/enterprise/articles/1802/06/news009.html
47デフォルトの名無しさん
垢版 |
2022/01/12(水) 00:33:49.20ID:pGVSG9FU
Google以外のサービスで普通に見る
2022/01/12(水) 01:07:08.90ID:UYbilz8d
存在はするがチェックボックスか画像選択が大半じゃない?
時代に追従できてないサイトが多数残っているだけで
2022/01/12(水) 07:04:30.99ID:piyjaY7r
多数残ってるのか見かけないのかどっちだよwww
50デフォルトの名無しさん
垢版 |
2022/01/12(水) 11:10:51.18ID:iVvvYh4P
キャプッチャ自体がが学習用のデータ集めに使われてるみたいな記事をみた記憶がある
51デフォルトの名無しさん
垢版 |
2022/01/12(水) 16:01:07.63ID:96XTJDEM
常駐GUIをtkinterで書きました
pyinstallerでexe化して、windows上でローカルアプリとして使います
exe実行したときに、既に常駐していたらソイツをフォーカスする(二重起動禁止)にするには
どういう仕組みを実装したらよいですか?
52デフォルトの名無しさん
垢版 |
2022/01/12(水) 16:33:16.11ID:oXHkYdgO
ウインドウズよりオマンチョーズが好きです
2022/01/12(水) 17:00:40.07ID:ukuM5pRX
初心者にもほどがある質問で申し訳ないんだけど教えて下さい

pythonインストールしたんだけどrequirements.txtを使ってインストールっていうのがよくわからないです
下のサイトによればpip install -r requirments.txtを使えって書いてあるんだけど
(ttps://buildersbox.corp-sansan.com/entry/2019/07/11/110000)
そもそものrequirments.txtっていうのをどうやって認識させるんですか?
何処かのフォルダに置くとかパス指定するとかそういう感じです?

調べたんですがrequirementsの作り方ばっかりで初心者に使い方教えてくれる場所がなくて途方に暮れてます
詳しい方ご教授いただけると大変助かります、よろしくお願いします
2022/01/12(水) 18:07:08.80ID:7dI4mng1
pip install -r requirments.txt
このコマンドを実行するときのカレントフォルダにあるrequirments.txtが認識されて、そこに書かれてるのがインストールされる
2022/01/12(水) 18:21:16.13ID:ukuM5pRX
返答ありがとうございます!
つまり
1.requirements.txtの入ったフォルダを開く
2.すぐにcmdで pip install -r requirments.txt を実行
の順でやればrequirements.txtの入ったフォルダがカレントフォルダとして認識されてるということですよね?

ただ上記の手順でやったのですが以下のようなエラーが帰ってきてしまいました
ERROR: Could not open requirements file: [Errno 2] No such file or directory: 'requirments.txt'
requiremens.txtは存在してるのになぜ認識してくれないのかわからなくて困ってます
56デフォルトの名無しさん
垢版 |
2022/01/12(水) 18:26:43.27ID:ukuM5pRX
すみません!pip install -r の後にrequirements.txtを直接投げ込んだら成功しました
前にパスを試したときと何が違ったのかよくわからないのですが…多分なにかミスってたのでしょうね
しょうもない質問にお時間割いていただき本当にありがとうございました
pythonが全く分かってないので何処かのフォルダに入れなきゃいけないのか、とか死ぬほど悩んでたので本当に助かりました!
2022/01/12(水) 18:28:34.85ID:60+8sbQA
>>55
>1.requirements.txtの入ったフォルダを開く
>2.すぐにcmdで pip install -r requirments.txt を実行
>の順でやればrequirements.txtの入ったフォルダがカレントフォルダとして認識されてるということですよね

使ってるエディタとか環境にもよるけど、そうなるとは限らない
この辺はコマンドプロンプトの知識になってくるけど
@cmdを開いたときにpwdとコマンドを打って、今参照してるパスを確認する
 (lsコマンド使うと、フォルダ内のファイル一覧も取得できるから、そこにrequiremens.txtがあるかも見る)
A違ってたらcdコマンドを使って、requirements.txtがあるフォルダまで移動する
58デフォルトの名無しさん
垢版 |
2022/01/12(水) 19:36:56.23ID:ukuM5pRX
>>57
コマンドプロンプトってそういう使い方も出来るんですね
調べたいことを調べる前提の知識がないという辛さを実感しましたw
2022/01/12(水) 20:26:47.06ID:piyjaY7r
>>51
WindowsならCreateMutexを使うのはどうか
https://blog.cfm-art.net/archives/931

file lockもいいが、プロセスkillした時にシグナルを処理しないと💩が残るのが難
CreateMutexで作ったmutexはプロセスが死ぬと自動開放されるのでその懸念はない
60デフォルトの名無しさん
垢版 |
2022/01/13(木) 08:21:54.14ID:quab12cO
>>59
ほーこういうのがあるんですね、勉強になりました
stack overflowにpywin32.showwindow使うパターンもあって参考になりました
両方試してみます
2022/01/13(木) 16:55:50.77ID:ZpHCuJHb
DearPyGuiで書くのもおすすめ
https://github.com/hoffstadt/DearPyGui
多重起動するかどうかの実装もできたはず
62デフォルトの名無しさん
垢版 |
2022/01/13(木) 23:17:23.13ID:quab12cO
>>61
あらーこれいいですね
simpleguiしようかなと思ってたけど
こっちためしてみようかな
pyinstallerちゃんがヒステリー起こしそうだけど
63デフォルトの名無しさん
垢版 |
2022/01/17(月) 12:00:21.23ID:1a+vUoH6
centos7にデフォルトで入っているpython2.7.5の環境です。

ターミナルでpythonと実行し、インタプリタモードにして、以下コマンドを実行したところ、centosログイン時の挙動がおかしくなりました。

>>> import gi
>>> gi.require_version('Gtk', '3.0')
>>> from gi.repository import Gtk
>>> ショートカットキーctrl+dで終了

上記設定を一旦クリアしたいです。 
ホームディレクトリのドットファイルのどこか(~/.???)に情報が保存されているのではと思うのですがどこにあるかわかりますか?
もしくはクリア方法がわかれば教えてください。
2022/01/17(月) 14:42:52.43ID:/Vbqcq7/
>>63
特に残ってないから気にすんな
ログイン時の挙動がおかしくなった原因は他にある
65デフォルトの名無しさん
垢版 |
2022/01/23(日) 01:27:37.70ID:9kMDQdv1
直接Pythonではないのですが、、Pythonの流儀ということで意見ください。
ttps://github.com/yaneurao/Ayane.gitにあるコードをimportして使いたいんですが
こういう場合どうやってファイルを配置します?<br>
myProjectフォルダ<br>
-フォルダ1(上記 Ayane.gitをここにクローンする)<br>
-srcフォルダ (上記ライブラリを使ってつくる自分のコード類)<br>
-venvフォルダ(myProjectの仮想環境)<br>
のような配置にすると、myProjectをgithubにプッシュする時にフォルダ1とvenvフォルダを
myProjectリポジトリの管理対象から外しておくと思うのですが、他のプロジェクトを
借用し、かつそれを利用する自分のプロジェクトをgitリポジトリに乗せる場合の
流儀が良くわかりません。<br>
むしろmyProjectとは全く別の場所にクローンして、それをインポートすべきなんでしょうか。
いや、、、pipした場合はパッケージはvenv内に入るのだから、venv内にクローンすべきなんでしょうかね。。。
2022/01/23(日) 10:11:38.47ID:XC5l3Rpo
その方法でもいいし、myProjectとは別の場所にcloneするでもいい
git submoduleで参照する方法もある

venv/に入れるのは変だと思う
2022/01/23(日) 12:14:23.36ID:Wu5qqWWY
どれだけそのコードを信用してるかや使うかで決めるかな

環境作るたびにインストール必須だよみたいなのだったらvenvだし
よく使うけどある程度修正したのを使わないとみたいなのだったらフォルダ1だし
使うたびに自分のソースに合わせて修正しないとみたいのだったらsrcフォルダ
68デフォルトの名無しさん
垢版 |
2022/01/23(日) 22:07:33.64ID:T1dR8XYG
venvに入れるならsetup.py書いてpipで入れられるようにしたい
69デフォルトの名無しさん
垢版 |
2022/01/23(日) 23:37:49.30ID:9kMDQdv1
>>66-68
ありがとうございます。git submodule、これこそ求めていたものかもしれません。
趣味の将棋を扱うのに、将棋のGUIソフトを使わずに棋譜解析での各手番の評価値と
実際に指した手との差異で好手悪手判定、手番毎の候補手とその読み筋、候補手間の
評価値のばらつき、をエクセル明細にしたくてとりくんでいますが、なんとかやれそうな気がしてきました。
2022/01/25(火) 15:46:02.96ID:42lgkov0
ここの皆さんはどういう環境でコード書いてるの?
windows10でpython3使おうと思ってるのですけど、公式が配布しているやつか、wslで使うのがいいのか悩んじゃってます
71デフォルトの名無しさん
垢版 |
2022/01/25(火) 16:23:05.52ID:dV84BduS
公式のwin版入れて問題が出たらwslにすればおk
2022/01/25(火) 16:28:22.81ID:rL/URVaj
win10、アナコンダでだな。ideはvs使ってる
公式とかwslで使うなんて考えたこともない
73デフォルトの名無しさん
垢版 |
2022/01/25(火) 16:46:35.57ID:BU0vvn65
公式のWin版入れるのが一番トラブルすくない
あとはVSCodeあれば事足りる
74デフォルトの名無しさん
垢版 |
2022/01/25(火) 18:24:04.77ID:MSa2pOie
win10, 公式3.10, venv vscode
2022/01/25(火) 19:09:52.59ID:U9NdU/dK
バージョン変更は簡単?
2022/01/25(火) 19:15:38.03ID:NfMS9nHt
PyCharm+Windows版公式
2022/01/25(火) 19:16:36.34ID:NfMS9nHt
ちなバージョンはまだ3.9x
2022/01/25(火) 19:29:43.84ID:/dd0PRan
>>75
公式はマイナーバージョン毎に既定のインストール先違うし
複数入れてpyコマンドのオプションやshebangで特定バージョンでの実行が可能
2022/01/25(火) 20:59:20.08ID:BmRih8+2
pythonは公式CPythonのシステムインストール
モジュールパッケージはユーザーインストール
ユーザーディレクトリはシンボリックリンクでバージョンアップ時に付け替える
バージョン分けはpyランチャーとシバンってとこだな
流石に2と3は完全に分けてるけど
2022/01/25(火) 21:46:27.25ID:FOQo9N+v
公式ページの3.8が機械学習ライブラリ関係でトラブル少なくていい感じ
3.10の文法気になるときは切り替えている
大層なIDE必要ないからエディタは何でもいいと思っている
VScodeが一番好き
anacondaはpyinsyallerで事故って以来使っていないな
condaコマンドとかよくわからんし...
2022/01/25(火) 23:25:29.53ID:Vpk3TLE1
Ruby on Rails などのウェブ系のプロは、
日本人が作った、多言語のバージョンマネージャー・anyenv を使う

rbenv(Ruby), pyenv(Python), nodenv(Node.js), tfenv(Terraform) などを統一的な操作方法で扱える

Renv, crenv, denv, erlenv, exenv
goenv, hsenv, jenv, jlenv, luaenv
nodenv, phpenv, plenv, pyenv, rbenv
sbtenv, scalaenv, swiftenv, tfenv

同様のツールに、asdf もある。
他には、Docker もある

YouTube で有名な、雑食系エンジニア・KENTA のサロンのRuby on Rails初心者用コースでは、
Linux, Raiis, Node.js, AWS Fargate, Terraform などは常識

Windows 版のMSYS2 とか、使う香具師はいない。日本語でバグるから。
必ず、仮想OS かWSL2 で、Linuxを使う。
本番サーバーが、Linuxだから
82デフォルトの名無しさん
垢版 |
2022/01/25(火) 23:37:44.91ID:b/Jp9bRr
教えてください。
pandasのmergeで、nan同士を結合させることはできますか?
2022/01/26(水) 12:46:50.93ID:DYVcmqpl
全角文字を変数名にしていいですか?
84デフォルトの名無しさん
垢版 |
2022/01/26(水) 13:18:15.24ID:L8/qQbgJ
絵文字もいいぞ

https://betterprogramming.pub/emojis-as-python-variables-sure-why-not-96ce955dada1
2022/01/26(水) 13:33:59.48ID:DYVcmqpl
>>84
やっぱりPythonは最高だわ
2022/01/26(水) 14:06:52.64ID:6gLrsb4d
全角使うとソース読みやすくなっていいんだけどな。人には見せれない
個人で開発してるからって場合でも詰まって人に聞きたくなるときとかあるし
2022/01/26(水) 14:45:37.25ID:xSTWaWcL
絵文字変数は標準対応してなくて、しかもこのトランスパイラは古いpythonにしか対応してなくて真面目なプロジェクトなのかもよくわからんけど絵文字も悪くねーだろって記事だと思うけど、それでも最高って評価でええんか?
2022/01/26(水) 15:43:59.34ID:a5hjt3dg
70で環境に関して質問した者です。
皆さんありがとうございます。結構皆さんバラバラな環境なんですね。
とりあえず公式入れてみようと思います。
ありがとうございました
2022/01/26(水) 18:45:40.80ID:BRzp4Bf7
こんな感じで関数の中で同じ処理を二回しているんですが、これをまとめて
二回呼び出すことによって、同じ効果を出すにはどうしたらいいんでしょうか?

a = get_a()
if a > 0: return("end")

その他の処理1

a = get_a()
if a > 0: return("end")

その他の処理2

if文と関数の呼び出し元にreturnする所を含めた形で繰り返したいです。
(全く同じ文なので)
2022/01/26(水) 19:08:21.23ID:nCUrJFSS
for f in [その他の処理1, その他の処理2]:
_if とreturn
_f()

とかでいけるかなあ?
2022/01/26(水) 19:52:22.08ID:hY/A3e1V
全角文字を識別子にするのは
区別が付きにくい文字があるので
あんまり賛成できないなあ
そういう文字を使わないのならいいけど
例えばひらがなの「へ」とかたかなの「ヘ」とか
92デフォルトの名無しさん
垢版 |
2022/01/26(水) 20:03:57.46ID:Dd3LK1vU
>>89
文脈ないから何がしたいかわからんけど
代入伴うガード節みたいなことなら
if a := get(): return
処理

と各メイン処理前に書くことはある
if not (data := get()): return
のが読みやすいか
2022/01/26(水) 20:53:13.08ID:BRzp4Bf7
>>90>>92
反応ありがとうございます。説明が悪くて申し訳ないです。

プリプロセッサのマクロみたいに、ifとreturnもまとめて関数の外に
くくり出すにはどうしたらいいんだろうという疑問です。

関数内関数とかにすると、返り値を判定しないといけないじゃないですか。
それも外に(別に関数の中でもいいですけど)出したいなと。

愚直に二回書くか、返り値を判定すれば、それで済むは済むのですが、
多分言語的に解決する方法はあって、それを知っておいた方が美しいかなと。
2022/01/27(木) 02:04:56.13ID:xQdC/mnh
プリプロセッサですか... というわけで import を悪用してみた。
return とか飛び出すみたいのは... 例外でもいいですか?
以下インデントがどうなるかわからない(全角を使ってみた)。
元のコードより複雑になっているというのは気のせい。

var.py:
----------------------
a = -10;
----------------------

check.py:
----------------------
import var

if var.a > 0:
  raise Exception('check')
-----------------------

main.py:
-----------------------
import var
import check

def foo():
  try:
    # 処理1... の後 var.a に値をセット
    reload(check)
    # 処理2... の後 var.a に値をセット
    reload(check)
  except Exception as e:
    return "end"
  return "ok"

ret = foo()
print("ret = " + ret)
-----------------------
2022/01/27(木) 09:13:31.95ID:q7HNZ+k9
しかしimportがただのプリプロセッサでないのがわかったw
変数のスコープがあったり二重読み込みがデフォで抑制されたり。
2022/01/27(木) 10:47:35.58ID:BLpAKzVu
親関数が戻る所は、
resp = await asyncio.gather(*exec_list)みたいになってるので、
普通にreturnして欲しい所存です……
2022/01/27(木) 11:09:39.82ID:kowYjA+c
Ruby のrequire は、ロードパスからモジュールを探して、読み込んで実行する。
ただし、同じものは2回以上実行しない

一方、load は、同じものでも再実行できる

include は継承チェーンに、mix-in されるから、
関数名を探索できるようになる

Rubyの作者・まつもとが、
require・includeの違いが分からない香具師は、プログラマーに向いていないと言った

ファイルを分割して書いて、読み込んで実行したり、継承チェーンを作ったりなど、
オブジェクト指向を作る、インタープリタの内部の仕組みに興味が無いような人は、
プログラマーに向いていない

プログラマー向きの香具師は、内部の仕組みに興味を持つ。
好奇心・探究心、学者
2022/01/27(木) 17:11:22.17ID:xQdC/mnh
>>96
>>94みたいのは駄目すかw returnというのは関数の呼び出しと表裏一体で、
関数を呼び出すところでその場所と状態を記憶して、処理が終わったらそこへ戻る。
関数の中でさらに関数を読んだらその新たな場所へしか戻れない。プリプロセッサは
関数じゃないのがミソ。

そうだなあ... Cのlongjumpみたいのが一応あるようだが.... まあそれも根本は例外
処理みたいなものだろうが... しかしさらに脱線していくようなw
2022/01/27(木) 17:17:29.41ID:O/Xb3RdK
操作を記録して、コードを自動生成する方法を教えて下さい。
例えば記録開始後に、
・すでに起動されているメモ帳の位置を変えて、そこに「あいう」と入力する。
と言った操作をしたら、それをコードにしてくれる感じです。
UWSCの動作記録機能のような物を想定しています。
2022/01/27(木) 17:28:41.66ID:aAqz06lG
マウスキーボードグローバルフックして記録するだけ
なんだけどwindowsのapi叩くことになるから(python向けの)情報少なくて大変かも
c#とかでやったほうが楽だと思うよ
2022/01/27(木) 19:18:15.13ID:7tIXYF4b
マウスの動きをトレースするのは誤差が大きいので
できればキーボードマクロを使った方が正確にできる
2022/01/27(木) 22:10:33.22ID:/l3HfrsT
>>99
一応こういうのあるよ
https://github.com/RMPR/atbswp
103デフォルトの名無しさん
垢版 |
2022/01/28(金) 20:23:11.50ID:NkTLAq7B
fee = ['+送料715円', '+送料1650円', '+送料', '+送料750円', '+送料']
上記のリストを下記のリストになるように置換したいです。
newfee = ['+送料715円', '+送料1650円', '+送料0円', '+送料750円', '+送料0円']

どのようにしたらいいですか?
re.subかre.search(書き方わからん).group().replace('+送料','+送料0円')で
いけそうかなーって思ってるんですがうまく書き方がわかりません
newfee = [ここの記載がよくわからん for fee in fee]

よろしくお願い申し上げます
104デフォルトの名無しさん
垢版 |
2022/01/28(金) 20:31:33.73ID:S2S29ZR7
\+送料$
105デフォルトの名無しさん
垢版 |
2022/01/28(金) 20:51:10.23ID:S2S29ZR7
newfee = [re.sub(r'\+送料$', '+送料0円', f) for f in fee]
2022/01/28(金) 20:56:55.92ID:NkTLAq7B
>>105
ありがとうございます!!
2022/01/28(金) 22:49:23.99ID:GOayFGyf
djangoでdb登録する方法を教えて下さい
modelインスタンスをループで沢山作って最後にbulk_create()を使って登録するのは分かりましたがmodelが7つあります
それぞれforeignkeyとそのrelated_nameで繋がっています
この場合の要領が分かりません
雰囲気的に中心となるようなmodel(仮にAと呼ぶ)を見つけてそこに例えば他のモデルのインスタンスをAのforeignkeyに渡すような感じにすればいいんですか?
もし複数渡したい時はどうすればいいですか?

そしてAがmodel Bを参照しており、BがCを参照している時にインスタンスオブジェクトAからCに登録するにはどうすればいいですか?
108デフォルトの名無しさん
垢版 |
2022/01/29(土) 00:12:59.76ID:5xe9daD4
>>103
>>> ['+送料0円' if f == '+送料' else f for f in fee]
['+送料715円', '+送料1650円', '+送料0円', '+送料750円', '+送料0円']
109デフォルトの名無しさん
垢版 |
2022/01/29(土) 13:40:24.15ID:YRcqrgZl
多分壊れてて、画像としては開けないjpgファイルがある(ビューワでも各種編集ソフトでもだめ)

im = pil.open(path)
.formatとか.sizeは読める

show()
imagearray = np.array(im)
はできない

エラーはpermission denied
ファイルは編集不可属性ではない

復元というか画像として読めるファイルを作成したいんだけど、なにをしてみたらいい?
2022/01/29(土) 13:55:47.07ID:s/Lqmbn4
どう壊れてるかによるからな
バイナリエディタで見てEOIがあるかとか、イメージデータが0000で埋まってないかをチェックして、データありそうならSOIからひとつず読み取ってみてどこが壊れてるか探す
ヘッダーが逝ってるだけならわんちゃんありえるけど、サイズ見えるのじゃイメージデータ逝ってる可能性大だろうな
111デフォルトの名無しさん
垢版 |
2022/01/29(土) 16:36:36.82ID:YRcqrgZl
>>110
むむ、そのへんの単語ググりながらやってみようと思ったんだけど
もうバイナリエディタで読めないっすね
えーまじか。そんなことあるのか

ちなみにwindows的にはサムネイルの作成はできてる模様
2022/01/29(土) 17:23:49.29ID:nzagQ2IL
>>111
> もうバイナリエディタで読めないっすね
???
ディスクエラーになるとかか?

> ちなみにwindows的にはサムネイルの作成はできてる模様
サムネはキャッシュされてるから以前は読めたんじゃね?
2022/01/29(土) 17:34:30.94ID:1f3+2daQ
とにかくそのjpgが入ってるドライブの他のファイルをどこかにバックアップするのが先
114デフォルトの名無しさん
垢版 |
2022/01/29(土) 17:49:41.23ID:YRcqrgZl
>>112
stirlingで読み込みエラーです
1行も表示されず

これサイズ見えてるから壊れててもデータはあると思ってたけど
もう根本的に中身飛んでる気がするなあ。zip圧縮に失敗したときみたいな
ゴミ箱に入れたら、もう動かせなくなったし

pilでバイナリ読んで変換してどうにか的な話をしたかったんだけど
関係なくなってきたので諦めます。スレ汚し失礼しました
2022/01/29(土) 22:08:45.86ID:S/AYuT16
Ruby on Rails では、画像アップロードのチェックに、
ImageMagick, libvips などを使う

容量チェックだけではダメ。
1px * 1,000px とか、極端なサイズもダメ

他にも、ウイルス埋め込みとか、様々な攻撃を排除しないといけない
116デフォルトの名無しさん
垢版 |
2022/01/29(土) 22:43:34.15ID:vSaHMnG7
>>115
死ねゴミ
2022/01/30(日) 03:46:00.30ID:XZx8eYmT
PILなんかの便利ラッパーじゃなくて、libjpeg直接触らないとどうしようもないでしょ。PILはJPEGの読み込み自体はlibjpegに丸投げして終わりなんだから。
2022/01/30(日) 11:09:15.57ID:N55kLChf
ディレクトリエントリ以外壊れてる可能性のが高いだろ普通に
2022/01/30(日) 13:07:19.08ID:DCMe3nw9
おっぱい画像じゃなかったらすれ違いだぞ
120デフォルトの名無しさん
垢版 |
2022/01/30(日) 23:10:06.45ID:Ps75IfQG
> お前は毎朝起きるたびに俺に負けたことを思い出すよ^^

あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!

くそチョンw
くそチョンはウンコを食べる糞食人種w
朝鮮人はゲリ便をじゅるじゅると
うまそうに食うw

在日は強姦を繰り返す犯罪者!
皆殺しにすべし!
2022/02/01(火) 22:05:36.75ID:hOl6ciiB
Tkinterで複数のウィンドウを非表示状態で生成し、
後に表示状態にするということをしたいのですがうまくいきません

threadingを使ってスレッド化することでmainloopを複数走らせることができると思っていたのですが、
最初の1つ目のウィンドウで止まってしまいます

何か解決法はありませんでしょうか

ttps://pastebin.com/BUj46Q8J
2022/02/01(火) 22:51:56.51ID:P6zC/C5s
>>121
走らせてないからわからんけどshowはスレッドをインスタンス化するときにコールしたらだめな気がするぞ
返り値を渡すんじゃなくて関数自体を渡すんだ
2022/02/01(火) 22:54:40.84ID:P6zC/C5s
27行目
thread = threading.Thread( target=show, args=(root,) )
でどうだ
2022/02/02(水) 00:33:40.49ID:mBcvYcjV
https://stackoverflow.com/questions/48045401
これがホントならプロセス分けるしかないね
125121
垢版 |
2022/02/02(水) 06:41:57.54ID:6CCAEreu
ありがとうございます
rootがいくつもあっても、mainloop()はどれか一つでも走らせればそれで良いのですね!
最後を

for root in window_list:
  root.deiconify()

window_list[0].mainloop()


 とすることで生成した分すべて表示できました
2022/02/02(水) 10:11:06.05ID:RL/7fH2d
一般的なGUIで、UIにさわれるのは1個のスレッドだけだね。
そこでメインループを回して、他のスレッドは処理を渡したりするだけで自らUIを操作
しないようにする。
2022/02/02(水) 21:39:50.40ID:EL6vvzM+
Pythonの勉強を始めて1ヶ月程度のプログラミング自体初心者です
for文でfor_in rangeというのを見かけたのですが、この場合の_って何を表すんでしょうか?
関数名とは違うのでしょうか?
128デフォルトの名無しさん
垢版 |
2022/02/02(水) 21:46:34.25ID:dtxLg5iw
https://blog.pyq.jp/entry/Python_kaiketsu_180420

アンダーバー(アンダースコア) python 変数名 意味
2022/02/02(水) 21:48:19.29ID:U+ueKPSe
変数だけど使わない変数を慣習的にアンダーバーを使っている
繰り返したい処理があるときはfor i in range(10)とか使うと思うけどそのforブロック内でiを使わないときはiじゃなくてfor _ in range(10)って感じ
2022/02/02(水) 21:52:54.86ID:PDm/NhWY
https://docs.python.org/ja/3/reference/lexical_analysis.html#reserved-classes-of-identifiers
公式の日本語は
> Elsewhere, _ is a regular identifier.
ここの訳が変だな
2022/02/02(水) 22:12:17.07ID:EL6vvzM+
レスありがとうございます
関数名じゃなくて変数名でしたね、失礼しました
丁寧に説明してもらっておきながら申し訳ないのですが、使わないとか定義しないとかいまいちピンと来ませんでした…
もうちょっと自分で色々書いてみてからまた来ます
2022/02/02(水) 22:16:55.84ID:U+ueKPSe
使うパターン
for i in range(10):
print(i)

使わないパターン
for _ in range(10):
counter += 1

すげー適当な例だけどわかるかな?
133デフォルトの名無しさん
垢版 |
2022/02/02(水) 22:29:06.02ID:dtxLg5iw
a, b, _, _, e = get_data()
5つ返ってくるけど要るのはa,b,eだけ みたいな
134デフォルトの名無しさん
垢版 |
2022/02/02(水) 23:51:53.90ID:ig8XBRXZ
>>130
おかしいもなにも、_に関しては訳されてなくない?
どこのこと
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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