[ここ壊れてます] .net
ファイル名に使えない文字を全角に変換するコードってこんなに長くなるものなんですか?
URLリンク(qiita.com)
name_ng = ["/","\",":","*","?","<",">","|"]
こんな感じでリストに入れてfor文の中で replace で置換すれば良いんじゃないかと思ったけど、リストにする段階でエラーになります
上記のURLの記述が最適解?
簡略化された書き方があったら教えてほしいです。
113:デフォルトの名無しさん
[ここ壊れてます] .net
a=True
b=True
aかつbがTrue、それ以外の全て
の条件って
if not (a and b): でよかったっけ・・?
114:デフォルトの名無しさん (ブーイモ MMde-zdrj)
[ここ壊れてます] .net
>>111
translate使えばforすらいらない
115:デフォルトの名無しさん
22/09/24 18:29:31.09 LDtPUxey0.net
>>111
その記事が最適かどうかは別問題として、まず0x5cをちゃんとエスケープして、あなたの考えを動くコードとして完成させよう
その上で、記事のコードと分かりやすさや速度を気の済むまで比較してみればよい
116:デフォルトの名無しさん
22/09/24 19:22:50.96 nYu0cH9J0.net
>>113
調べて試してみます
>>114
そもそも ”\” は文字列としても単体では使うことができない感じですかね?
知らなかったです。教えてくれてありがとうございます
117:デフォルトの名無しさん (アウアウウー Sa43-a1Je)
[ここ壊れてます] .net
r'hoge\hoge'
118:デフォルトの名無しさん
22/09/25 00:00:20.77 TfTFVrn20.net
>>112
if all([a, b]):
else
119:デフォルトの名無しさん
22/09/25 00:30:59.06 wq9M03AC0.net
allとanyは積極的に使おう
フラグを別に持つとか途中で抜けてループ変数を見るとか、
何でレガシーな言語はそれで満足してたのか判らん
120:デフォルトの名無しさん
22/09/25 02:03:20.35 ouzeiwB30.net
今日からPython始めたんだけど、エラーが出て動かなくて悩んでたらインデントが原因だったw
調べたらインデント自体プログラム構造的に意味を持ってたんだな。。。
121:デフォルトの名無しさん
22/09/25 05:32:21.54 WCcUyzUQ0.net
少しコードが長くなってきたので、関数を定義してみようと思ったのですが
関数を使うくらいなら、最初からclassとmethodでやった方が後々便利ですかね?
それから現段階ではまだinstance変数を使うかどうかは不明ですが
classの最初に__init__は決まり文句として書いておいて良いのでしょうか?
仮に全く使わなかった場合にバグの元になったりするのでしょうか?
122:デフォルトの名無しさん
22/09/25 05:38:14.60 iEmY5l+s0.net
そのレベルならまず関数に慣れよう
classはそのあと
123:デフォルトの名無しさん
22/09/25 05:54:55.13 WCcUyzUQ0.net
了解しました
124:デフォルトの名無しさん
22/09/25 11:02:47.56 sQFmQmse0.net
classを使うほうが常に優れていると思ってるなら認識を改めたほうがいいよ。
classと関数両方使えるがpythonのメリット。
標準ライブラリだって両方共存してるのにどちらかを捨てるなんてもったいない
125:デフォルトの名無しさん
22/09/25 11:22:42.32 Sdaj2srm0.net
自己満だからといっていつも意識的にそれらを考えていかなければより良い設計はできないのかもしれない
126:デフォルトの名無しさん
22/09/25 11:43:23.68 rlnwElI30.net
クラスはメンバ変数にselfが強制だからコードが冗長になって嫌だわ
127:デフォルトの名無しさん
22/09/25 12:37:00.29 uj3dGGMEr.net
>>125
インデントも深くなるし、状態持つ必要が無ければモジュール化で十分よな
128:デフォルトの名無しさん
22/09/25 12:49:19.19 wq9M03AC0.net
大仰なクラスを作ろうとするから
インスタンス変数が2つだけ、みたいなのでも十分役立つ
129:デフォルトの名無しさん
22/09/25 17:18:10.55 hs4ndUhv0.net
>>127
それくらいならNamedTupleでも良いかな
130:デフォルトの名無しさん
22/09/25 17:41:46.06 iEmY5l+s0.net
dataclassええで
131:デフォルトの名無しさん
22/09/25 17:54:34.18 AFTbeWYX0.net
クラスは実装の詳細を見せたくない時に限る
132:デフォルトの名無しさん
22/09/26 07:24:51.77 ciNDFZ6I0.net
クラス名をclass Hoge
ファイル名をhoge.py
インポートでimport hoge
インスタンス名何にしようかいつも悩む
??? = hoge.Hoge()
133:デフォルトの名無しさん
22/09/26 09:07:29.52 P9G+/qqR0.net
>>81
そもそも[0,1]のときにx[0]を2つ取り出したいのかどうかがよくわからないな
あと、最大(?)は[0,10]じゃないか?
[0,9]のときと[0,10]のときでどう処理を変えたいのかよくわからない
半開区間に含まれる最小最大を取り出したいなら、
for i in [idxs[0], idxs[1] - 1]でいいと思うのだけどこれは嫌?
134:デフォルトの名無しさん
22/09/26 09:12:30.59 P9G+/qqR0.net
木構造とかグラフ構造を自作したいなら(間々ある)、
クラスにした方が便利なときある気がするけどな。
get_tree_children(node)とかしだすなら、node.children()の方が名前空間がすっきりしていいし。
実装の詳細を見せたくないかどうかというよりは、関心の分離をしたいかどうかによるような気がするな。
確かにクラス作るまでもないようなことは多いけど。
135:デフォルトの名無しさん
22/09/26 20:32:27.38 b9hyANFk0.net
>>128
値が変えられないがな
136:デフォルトの名無しさん
22/09/26 23:15:54.08 QR+uVx8I0.net
python 3.9.10
a = (1, 2, 3)
b = a
c = (1, 2, 3)
print(a==b)
print(a is b)
print(a==c)
print(a is c) #True?
なぜ a is c が true になるのでしょうか?
137:デフォルトの名無しさん
22/09/26 23:17:59.46 QR+uVx8I0.net
>>135
ideone に貼っときます
URLリンク(ideone.com)
なぜでしょうか?
138:デフォルトの名無しさん
22/09/26 23:31:03.60 b9hyANFk0.net
a = 1
c = 1
の時と同じ理由
139:デフォルトの名無しさん
22/09/26 23:32:02.41 Gide+MMY0.net
>>136
ならない
140:デフォルトの名無しさん
22/09/26 23:33:01.37 Gide+MMY0.net
ほらよ
URLリンク(i.imgur.com)
141:デフォルトの名無しさん
22/09/26 23:49:19.92 eE4Lst2k0.net
>>139
それREPLでやってるからinterningが効いてないじゃないかな
>>135
Tupleはimmutableだからaとcが同じオブジェクトを指しても問題なくて
Pythonが最適化をした場合はa is cがTrueになるケースがある
「interning」でググってみて
例えばTupleを関数で返すようにすればinterningされずにFalseになると思う
def foo(x):
return (x, x+1, x+2)
a = foo(1)
c = foo(1)
142:デフォルトの名無しさん
22/09/27 00:20:20.92 LFY5tutJ0.net
>>140
ありがとうございます、オプティマイゼーションの余地がある、ということですね、納得しました
143:デフォルトの名無しさん
22/09/27 19:02:24.07 zjZtbJ3M0.net
a is cが真になるかはかなりケースバイケースな気がするし、
中身を比較したいんだったら使うべきじゃないね
本当に同じtupleインスタンスかどうかを確認したいときだけにすべき
144:デフォルトの名無しさん
22/09/27 22:33:08.85 3OHfLHhN0.net
tupleだけの話ではなくてどの型でも同じだけどね
例えば文字列とか
145:デフォルトの名無しさん
22/09/27 23:35:04.66 tKd9rAjb.net
n=12345.67
小数点以下が何桁あるのか調べたいのですが
len(str(n).split(".")[1]) if isinstance(n, float) else 0
こんなんでいいですかね・・?
146:デフォルトの名無しさん
22/09/27 23:51:45.87 3OHfLHhN0.net
>>144
URLリンク(ideone.com)
147:デフォルトの名無しさん
22/09/27 23:53:56.84 +joc5Asc0.net
>>144
誤差で予想外の挙動しそうだからDecimal使う方がいい
148:デフォルトの名無しさん
22/09/28 02:27:12.38 OOL0jr8Q0.net
>>144
それだと
n=1.0 -> 1
n=0.00001 -> IndexError
になる
len(format(n,".17f").split(".")[1].rstrip("0"))
後ろのif isinstance(n, float) else 0も不要
n=1.0 -> 0
n=0.00001 -> 5
149:デフォルトの名無しさん
22/09/28 09:19:00.77 9I9ISsCh.net
>>145-147
たしかに
0.30000000000000004に対して17得られたのは正解だと思いますが
0.00001で1e-05になっててエラーでました
Decimalかformat使ってみようと思います
ありがとうございました
150:デフォルトの名無しさん
22/09/28 10:07:58.97 9I9ISsCh.net
やりたかったことは
受けとった1234.56や0.12345などの固定小数点数に
0.1とかを掛けたり足したりして計算、変形したのを
受け取った固定小数点数の整数部と小数部の数を維持したまま
固定小数点か文字列で処理したかったのですが
改めてやってみるとなんか勝手に桁数が変わってしまいますね・・
1234.56で受け取った場合、1.05を掛けたとき→1296.288ではなく1296.29
0.12345で受け取った場合、1.05を掛けたとき→0.1296225ではなく0.12962
1234で受け取った場合、1.05を掛けたとき→1295.7でもいいし1296でもいいし1296.0でもいい
みたいにしたかったのですが難しい・・
151:デフォルトの名無しさん
22/09/28 10:17:26.42 9I9ISsCh.net
from decimal import Decimal
str(Decimal(0.123456))
str(Decimal(0.123456)*Decimal(1.05))
#'0.1296288000000000015945911258'
あれ、そもそも0.123456の小数部の桁数はどうやって知るんだっけ??
てところで詰まってます・・
152:デフォルトの名無しさん
22/09/28 11:25:04.93 9I9ISsCh.net
冗長な気がしますがこんな感じにしてみました
何かバグが発生しそうな気がします
from decimal import Decimal
ary=[1234.5,165,0.34,0.0001,0.000001,3.00001,0.1*3,123456]
def f(n):
s=format(n)
return int(s.split("-")[1]) if "-" in s else len(s.split(".")[1].rstrip("0")) if "." in s else 0
r=1.05
for n in ary:
d=f(n)
c=Decimal(n)*Decimal(
153:r) rs=c.quantize(Decimal("0."+("0"*d))) print(n,c,d) print("-->",rs,"\n")
154:デフォルトの名無しさん
22/09/28 11:30:47.23 9I9ISsCh.net
連投すみません 結果です
URLリンク(ideone.com)
155:デフォルトの名無しさん
22/09/28 13:38:45.48 E42G0/DqM.net
元々の桁数でroundしたいって感じなのかな
156:デフォルトの名無しさん
22/09/28 18:25:19.27 OOL0jr8Q0.net
>>152
format使うの提案したけど使わないほうがよさそう、誤差がでる
f(n): 負数で落ちる
s=str(n).lstrip("-")
c=Decimal(n*r) のところで
n*r で誤差がでる
c=Decimal(str(n)) * Decimal(str(r))
負数対応四捨五入 -0.015 を四捨五入して -0.02
rs=((c > 0) - (c < 0)) * abs(c).quantize(Decimal("0."+("0"*d)), rounding=ROUND_HALF_UP)
-0.015 を四捨五入して -0.01のようにしたい場合
rs=c.quantize(Decimal("0."+("0"*d)), rounding=ROUND_HALF_UP)
四捨五入したいのかよくわからんかった、roundingは好みのオプションでどうぞ
157:デフォルトの名無しさん
22/09/28 19:37:21.94 9I9ISsCh.net
>>154
ありがとうございます
やはり至るところで誤差が発生するのですね
四捨五入は今回の用途ではどちらでも良い感じです
せっかくなのでまとめてみました
URLリンク(ideone.com)
ありがとうございました
158:デフォルトの名無しさん
22/09/28 19:42:02.44 o0cHd3Tq0.net
先にIEEE754読んでみては?
誤差に関しての勘所がわかるようになる
159:デフォルトの名無しさん
22/09/28 20:32:50.93 x5UMfEp40.net
Pythonに限らず浮動小数点数を使う場合は常に誤差の問題がつきまとう。
0.1というのがすでに二進数ではきっちり表現できない数字なので、有効数字を何桁にするのかというのは実装の段階で決めなくちゃならない。
URLリンク(docs.python.org)
正確に表現できるのは、0.5,0.25,0.125...と1を2で割っていった数とその整数倍のみ
0.1は1/(2×5)となり1/5が2進数では循環小数となり浮動小数点数では正確に表せない。
ということを念頭に置いてまず何がやりたいか考えた方がいいよ。
decimalモジュールは便利そうだね。
160:デフォルトの名無しさん
22/09/28 23:21:28.71 FDPwu/KN0.net
log2で有効桁数計算出来るでしょ
161:デフォルトの名無しさん
22/09/29 00:26:06.29 3C3gpnCY0.net
>>154
どちらの書き方でも
-0.015 を四捨五入したら-0.02だった、すまん
-0.01にしたい場合は自力でなんとかして
162:デフォルトの名無しさん
22/09/30 00:55:04.52 qun5+YRs0.net
昔から不思議なんだけど
何で分数で処理しないのかな?
最後に割り算を一回だけすれば
誤差がでないじゃないの
163:デフォルトの名無しさん
22/09/30 01:46:32.47 0IYvIpx66.net
掛け算でも足し算でも誤差が出るから
164:デフォルトの名無しさん
22/09/30 01:53:32.93 sForoGQI0.net
Pythonは整数側の桁数制限が無いのを利用して高精度にできそう
165:デフォルトの名無しさん (アウアウウー Sa43-hb2l)
[ここ壊れてます] .net
>>160
似たような大きさの数字ならその発想もいいけどね
現実はコスパの悪い任意精度の演算が必要になることが多いのでは
166:デフォルトの名無しさん
22/09/30 03:11:26.40 FkDRVgM50.net
>>160
つ fractions
167:デフォルトの名無しさん
22/09/30 04:56:46.10 HxNT59pn0.net
だから誤差の話するならIEEE754読めよ
168:デフォルトの名無しさん
22/09/30 04:57:30.60 CfDFJOy00.net
>>160
昔GCD付きの分数クラス作ったけど
結局はdoubleになったことがある
169:デフォルトの名無しさん
22/09/30 05:21:28.14 oHn8O8ll0.net
>>160
四則演算だけならいいけど√とかsin( )とかはどうする?
>>161
掛け算、足し算で誤差がでるケースとは?
170:デフォルトの名無しさん
22/09/30 08:01:25.94 Gm4+1fgX0.net
sinとかも内部は四則演算
171:デフォルトの名無しさん
22/09/30 09:17:00.10 oHn8O8ll0.net
>>168
近似演算の話されても困るんだがw
172:デフォルトの名無しさん
22/09/30 09:23:23.51 k91OtGRla.net
三角関数の近似じゃない演算て
173:デフォルトの名無しさん
22/09/30 10:05:45.64 EsKmogiV0.net
python chapelについて質問です。
情報があまりないので、チャペルについてお勧めのサイトがあれば教えてほしいです。
174:デフォルトの名無しさん
22/09/30 10:38:01.55 t/wNXSJY0.net
クヌースのTAOCP読むといいよ
コンピュータでの数値計算の全てが書かれてる
175:デフォルトの名無しさん
22/09/30 13:20:23.85 oHn8O8ll0.net
>>170
sinsin, cos のまま計算するって話だろ
数学不得意か?
176:デフォルトの名無しさん
22/09/30 13:47:23.87 k91OtGRla.net
>>173
そんなもん代数的な操作だろ
177:デフォルトの名無しさん
22/09/30 13:54:50.47 oSg68bQdM.net
>>160
遅いからだよ
178:デフォルトの名無しさん
22/09/30 14:09:07.38 oHn8O8ll0.net
>>174
話は>>160から始まってて途中は代数的な操作で最後に一回だけ演算することで誤差を抑えられるって話な
179:デフォルトの名無しさん
22/09/30 16:11:14.18 7g2iZKZC0.net
三角関数は二項演算じゃないから後も先もないだろ
180:デフォルトの名無しさん
22/09/30 16:39:44.93 du1MSukG0.net
ここまで有効数字の話なし
181:デフォルトの名無しさん
22/09/30 16:40:16.15 Gm4+1fgX0.net
有理数演算に有効数字は関係ない
182:デフォルトの名無しさん
22/09/30 17:02:40.52 7g2iZKZC0.net
実は誰も数値計算誤差について知らないのである
183:デフォルトの名無しさん (ワッチョイ 1e66-yYUR)
[ここ壊れてます] .net
組み込み系で、積算の量を保持していて
1秒毎に測定して何年というスパンで計算を続けると、
もう32bitでは精度が足りなくなる
184:デフォルトの名無しさん
22/09/30 18:26:40.60 J+iH2myB0.net
最後に浮動小数点数にして誤差を減らす方法は、代数的な計算ができる必要がある。
Mathematicaとか、SymPyだな。
ただ代数的な計算は上手いこと式を整理してやらないと簡単にならないことも多い。積分は公式を知らないと出来ない、というのと同じ。
有理数の四則演算だったら単なる有理数演算を逐次的に実行していけば問題ないだろうが。
185:デフォルトの名無しさん
22/09/30 18:28:54.96 J+iH2myB0.net
>>177
んなことないだろ。加法定理やら積和、和積の公式とか習わなかったのか。あの辺使うと極端な場合の誤差減らせるよ。
xが0に非常に近い場合のsin2x/sinxとかね。
186:デフォルトの名無しさん
22/10/01 03:53:03.59 SpYHa2lW0.net
お金の計算とかは
有理数しか出てこないんだから
分数で十分のような気がするんだが
187:デフォルトの名無しさん
22/10/01 05:23:12.47 9xFR6mUQ0.net
丸めたくない意図だと思うが加減算だけで速攻破綻する
188:デフォルトの名無しさん
22/10/01 05:55:22.47 jubCkgWp0.net
単にbit数が足りなくなるという話なので、
必要に応じてbit数を増やしていけばいい
無限に増えることは絶対ない
189:デフォルトの名無しさん
22/10/01 06:02:40.31 WTWdfTM50.net
質問です。
djangoの資格を作りたいとおもってます。
需要はありますか?
190:デフォルトの名無しさん
22/10/03 07:28:28.28 qHW/WFxU0.net
URLリンク(translate.google.com)
Google翻訳のページで、テキスト入力ボックスから「Tabキー」を1回押すと必ず「音声を聞く」のアイコンに移動するようにしたいのですが、Pythonで可能ですか?
通常は3回で行けるのですが、”原文の言語”や”もしかして”が表示されるとTabキーを押す回数が変わって面倒です。しかもリストが表示されててそのパターンなのか見えない。
Pythonで何とかしようとしてるのがそもそも間違っている気がして、簡単なHPをJavaとか?で作ったり、アドオンを組んだりとか別の手段が必要ですかね?
191:デフォルトの名無しさん
22/10/03 07:35:38.92 y8eCR1Dta.net
うるせえ
192:デフォルトの名無しさん
22/10/03 09:20:27.54 XqhFz79Ma.net
>>188
現在のフォーカスを取得することでTab回数制御できそうだけど
そもそも音声を聞く、のidありゃそこに飛ばせるやろ
193:デフォルトの名無しさん
22/10/03 10:02:57.41 qHW/WFxU0.net
>>190
seleniumを使ってプログラムを実行した時だけなら出来たのですが、普段使いで常にその状態にさせる方法が分からなかったです。
独自の簡単なChrome拡張機能を作る方向が一番良さそうな感じです。そっちで少しやってみます。お騒がせしました。
194:デフォルトの名無しさん
22/10/03 10:19:40.80 2xmZEmoH0.net
>>191
拡張起こさなくてもTampermonkey拡張でスクリプト書くだけ
195:デフォルトの名無しさん
22/10/03 10:33:51.18 vUZPctIIM.net
USWCとか使ってESCキーを押したら画像認識で再生ボタンクリックとかにすると簡単そう
ESCだと位置的に押しやすいし予測候補も消える
pyautoguiみたいなの使えばPythonでもUWSCと同じ事出来たはず
windows限定の話だけど
196:デフォルトの名無しさん
22/10/03 10:49:36.68 WjbJBDxU0.net
拡張する方向でやってもすぐに使えなくなったりするので、
キーやマウスの操作を発生させる方向でやるのが結局ベストだったりする
197:デフォルトの名無しさん
22/10/03 10:54:58.28 qHW/WFxU0.net
>>192-194
最初に調べるキーワードが出てこなくて分からないことが多いので情報助かります
頂いた情報を元に解決する方向でやってみます。ありがとうございました。
198:デフォルトの名無しさん
22/10/03 10:55:37.39 S1BqvHYWd.net
>>169
>>173
複素数や四元数を使うのが割りとマジでお薦め
199:デフォルトの名無しさん
22/10/03 11:05:12.96 zOLlU4yCa.net
オイラーをほめたたえよ
200:デフォルトの名無しさん
22/10/03 18:00:29.25 pcuzjq2H0.net
>>188
Ruby, Selenium でも、JavaScript を使って出来たけど、
ソースコードの何かの単語がブロックされるので、
ここには貼れないので以下へ
URLリンク(jsfiddle.net)
201:デフォルトの名無しさん
22/10/03 18:09:52.15 wCVa7NBkM.net
>>198
どーゆーこと?
202:1
22/10/03 22:09:32.24 yB/cj66NM.net
質問です
以下のプログラム(wikipediaの今日は何の日)をエクセルで起動させたときに最後の年号の()が取れてないとおかしいのですがどこのコードが間違っていますか?
優しい方教えてください
import requests
from bs4 import BeautifulSoup
import csv
import re
url="URLリンク(ja.wikipedia.org")
response=requests.get(url)
soup=BeautifulSoup(response.content,"html.parser")
top_entry=soup.find("div",attrs={"id":"on_this_day"})
entries=top_entry.find_all("li")
today_list=[]
for i,entry in enumerate(entries):
today_text=entry.get_text().replace("(","(").replace(")",")")
match=re.search("\(([1-9].*?)年\)", today_text)
if match:
today_list.append([i+1, entry.get_text(),match.group(1)])
else:
today_list.append([i+1, entry.get_text()])
with open("output.csv", "w", encoding="Shift_JIS") as file:
writer=csv.writer(file, lineterminator="\n")
writer.writerows(today_list)
203:1
22/10/03 22:11:29.02 yB/cj66NM.net
何度も本(スクレイピング・ハッキング・ラぼ)見返したけど間違ってないんです…
204:デフォルトの名無しさん
22/10/03 22:13:35.20 WjbJBDxU0.net
漢字コードとか?
205:デフォルトの名無しさん
22/10/03 22:15:49.89 phcGwi7g0.net
とりあえずこれに聞こうぜ
URLリンク(aiprogrammer.hashlab.jp)
206:デフォルトの名無しさん
22/10/03 22:28:30.42 cMmfYMlm0.net
お願いします
URLリンク(ideone.com)
for i in range(1, 100) で 99 回 next を呼んでいるのに、なぜ 79 で終わってしまうのですか?
207:デフォルトの名無しさん
22/10/03 22:28:53.24 fB4Oth8WM.net
>>203
すげぇこんなのあるんだ
でも解決しなかった(´・ω・`)
208:デフォルトの名無しさん
22/10/03 22:36:32.61 Hgv/NPoj0.net
>>204
n=15のときFizzBuzz Fizz Buzzの3つ表示されます
209:デフォルトの名無しさん
22/10/03 22:54:57.92 phcGwi7g0.net
これでいけそうですが、どうでしょうか
1から100までカウントして、15で割れたらFizzBuzzと表示して、5で割れたらBuzzと表示して、3で割れたらFizzして数字を表示する
210:デフォルトの名無しさん
22/10/03 22:58:18.22 phcGwi7g0.net
修正した
1から100までカウントして、15で割れたらFizzBuzzと表示して、5で割れたらBuzzと表示して、3で割れたらFizzして数字を文字列で表示する
211:デフォルトの名無しさん
22/10/03 23:01:03.63 cMmfYMlm0.net
>>206
elif にするべきだったんですね!ありがとうございます!
212:デフォルトの名無しさん
22/10/03 23:48:34.11 DL3YHdAw0.net
ウェブスクレイピングをやってみたくて奮闘しておりますが、CSVへの書き込み時にエラーがでます
どう改善すればよいかわからず困っています。助けてください。
おま環(Python 3.9.12+Windows10+VScode)
【コード】
for a in soup.find_all('a'):
link = a.get('href'), a.text
link.to_csv('link.csv')
【エラー】
link.to_csv('link.csv')
AttributeError: 'tuple' object has no attribute 'to_csv'
213:デフォルトの名無しさん
22/10/04 00:31:15.23 QZmM2iut0.net
>>210
URLリンク(pastebin.com)
214:デフォルトの名無しさん
22/10/04 06:25:16.21 UhX37WNP0.net
>>203 で
Python
Tuple to dataframe
で聞く
215:デフォルトの名無しさん
22/10/04 06:51:23.40 jZxsvBQn0.net
URLリンク(aiprogrammer.hashlab.jp)
ウェブスクレイピングで、aタグを取得し、そのaタグをcsvファイルに出力するコードを作成してください。
import csv
from bs4 import BeautifulSoup
with open("sample.html") as f:
soup = BeautifulSoup(f, "html.parser")
csv_file = open("output.csv", "w", encoding="utf-8")
writer = csv.writer(csv_file)
for a in soup.find_all("a"):
writer.writerow([a.text, a.get("href")])
csv_file.close()
216:デフォルトの名無しさん
22/10/04 22:24:51.48 fseuENfmM.net
知恵袋にも質問したのですがどなたか教えていただけると嬉しいです
URLリンク(detail.chiebukuro.yahoo.co.jp)
217:デフォルトの名無しさん
22/10/04 22:40:41.78 g6GmefYL0.net
>>211 213
丁寧に教えてくださりありがとうございます。
218:デフォルトの名無しさん
22/10/04 23:17:10.94 CNGS9dK70.net
>知恵袋にも質問したのですが
5ch はマルチポスト禁止です!
5chで質問する場合は、他での質問を取り消してからにしてください
219:デフォルトの名無しさん
22/10/04 23:19:23.00 NeQlYRE40.net
んなこたーない
220:デフォルトの名無しさん
22/10/04 23:24:09.71 4YJ9syiq0.net
さすがにインストールできてないのは答えようがない
221:デフォルトの名無しさん
22/10/04 23:28:30.56 IUIBMeejH.net
>>216
fj ではマルチポスト禁止の理由がありクロスポストという代替があったけれども、ここでのマルチポスト禁止の理由は?
222:デフォルトの名無しさん
22/10/05 00:22:21.08 Tx2gHWm/0.net
せっかくの集合知が分散するからじゃないの?
223:デフォルトの名無しさん
22/10/05 00:31:43.32 rm6FRUcS0.net
マルチ野郎はよそで解決しても報告しない
放置してそこら中にゴミを残す
224:デフォルトの名無しさん
22/10/05 00:40:43.93 93gtHac60.net
ぶっちゃけスレは落ちて過去ログになるし
検索性も低いから集合知の蓄積なんてしないよ
マルチポスト禁止は形骸化した旧きネチケットだと思う
225:デフォルトの名無しさん
22/10/05 00:56:27.52 Tx2gHWm/0.net
>>222
いやぁそうでもないと思うけどねぇ
2ちゃんねるの過去ログをあさって解決方法を見つけたことも数多あるし
解決できない場合でも、ヒントになるようなことが散らばっていて、それをきっかけに探し出せることもある
検索のやり方次第じゃないか?
226:デフォルトの名無しさん
22/10/05 01:03:22.70 93gtHac60.net
>>223
調べごとはよくするけど
2ちゃんで解決したことはないな、というか、検索方法によるだろうが出てきすらしない
大体Qiita、個人ブログ、stackoverflowのどれか
227:デフォルトの名無しさん
22/10/05 01:12:14.00 Tx2gHWm/0.net
>>224
いまはそうした5ちゃんねる以外の方がまともな完結方法があると思うよ
でも以前は、そういうのがほとんど当てにできなかったり、
*nixやマイナー言語、ハードウェア特有のトラブル、アングラ系wなんかだと、
英語資料を当たるきっかけやヒントが欲しかったりしたので、
2ちゃんねるのちょっとした書き込みがありがたかったなぁ
いまでも、"site:5ch.net" をつけてキーワードをググることで、
5ちゃんねるの集合知はちゃんと機能しているよ
228:デフォルトの名無しさん
22/10/05 01:17:40.14 j989iulk0.net
2ちゃんねるに書いてある事を、
そこまで信用したことはないな
あるとすれば、裏が取れたとき位
リンク張ってあっても、あやしげなサイトだったりすることもある
229:デフォルトの名無しさん
22/10/05 01:59:12.01 xc1v9MP10.net
今回みたいに簡単なエラー文も読めねえだけのカスがネット上に散らかることが多く
これが害悪であるのでマルチポスト野郎は基本的にクソである
集合知の分散ではない。無知の飽和が問題
230:デフォルトの名無しさん
22/10/05 05:43:38.64 FOT9/eKgM.net
ゴメン 今回の件は全面的に俺が悪い
すみません
231:デフォルトの名無しさん
22/10/05 05:45:37.15 FOT9/eKgM.net
>>227
エラー文のseleniumは既にインストール済だぞ
232:デフォルトの名無しさん
22/10/05 05:51:53.98 FOT9/eKgM.net
>>218
seleoniumはインストール済だよ
pip install selenium でね
233:デフォルトの名無しさん
22/10/05 06:08:56.11 Vke5X/wtM.net
Pythonが複数バージョンインストールされてるってオチじゃないの
よくあるAnacondaどうこうってやつ
234:デフォルトの名無しさん
22/10/05 06:09:13.82 FOT9/eKgM.net
selenium一度アンインストールして再度インストールしたら出来ました
スレ汚しスマン
235:デフォルトの名無しさん
22/10/05 06:11:17.00 FOT9/eKgM.net
>>231
朝早いですね!
再インストールしたら出来るようになりました
何故か知らないけど……
……というより勝手にブラウザが開いて閉じての動作を見た時は感動しました
すげー勉強する意欲が増した
236:デフォルトの名無しさん
22/10/05 06:57:09.88 wne70pEz0.net
>>219
マルチポストされると同じようなレスを複数回読むハメことあるし回答したら他のスレで既に解決してたとかあるからそりゃうざいわってことだろ
ちなみにクロスポストはたいていのリーダーでどれか一つ読めば他のグループへの投稿も既読になるし回答する際もディフォルトの回答先グループが指定できるから回答が散らばることも防げる
237:デフォルトの名無しさん
22/10/05 18:42:25.05 8ltN7Y6y0.net
原神スレかpythonスレかで迷ったんですけど、ちょっと失礼します。
URLリンク(github.com)
ディスコbotがサ終してたのでありがたくオフ環境に導入すべく頑張ったんです。
setupの手順から一通り終えてpy bot.py後なんですが
raise ValueError("Duplicate keys!")の無間地獄にはまってるんですけど
列行文でエラー指摘されてチェックしても全然関係無さげでわからない時どこ見たらいいですか?。
やっぱり基本を熟知してる人は修正して当たり前な場所とかを理解できてなくてエラー起きてるんですよね。たぶん。。
詳細足りなさすぎるのは理解してるんですけど、ほんと憶測適当アドバイスでいいので教えて下さい。
238:デフォルトの名無しさん
22/10/05 22:24:23.68 MbZCvQpZ0.net
>>220
それが理由だとしたらそもそも質問できる場が複数存在していて統一されていないことが悪いってことになる。
239:デフォルトの名無しさん
22/10/05 23:32:03.75 W5I+dJQy0.net
>>235
Duplicate keys! って、
データベースのUNIQUE インデックスまたは PRIMARY KEY に、
既に存在する同じキーで挿入しようとしたとか?
そのGithub のbot.py 内を「Duplicate」で検索しても、見当たらないけど?
どのファイルのソースコードなの?
240:デフォルトの名無しさん
22/10/06 01:46:24.04 eDAszKmt0.net
>>237
bot.py実行後に、~\Programs\Python\Python38-32\Lib\site-packages\toml
内のpython38-32のdecoder.pyからエラーが出てます。
powershellを使いました。 ほぼ素人ですみません。
241:デフォルトの名無しさん
22/10/06 02:48:03.34 2LM4DEsy0.net
コードじゃなくて食わせるデータがおかしいんでないの
242:デフォルトの名無しさん (ワッチョイ c32c-Kmz1)
[ここ壊れてます] .net
>>238
python入門おめでとう!
243:デフォルトの名無しさん (ワッチョイ 632c-LIzE)
[ここ壊れてます] .net
「python toml decoder duplicate keys」で検索!
TOML ファイルの形式になっていないとか?
ファイルがBOM付きUTF-8 になっているとか?
Python は、BOMなしUTF-8 じゃないの?
URLリンク(git.cardiff.ac.uk)
このファイルの781, 783 行目に、raise ValueError("Duplicate keys!") がある
244:デフォルトの名無しさん
22/10/07 07:11:32.41 0vlnX2v40.net
>>241
UTF-8になってました。
ValueError: Duplicate keys!とTomlDecodeError: Duplicate keys!が出ていますが
デコードが実行された結果キー重複が起こっているのを知らせただけで、原因はやはりbot.pyの中にあるのでしょうか?
245:デフォルトの名無しさん
22/10/07 09:55:21.23 BuUd5Oey0.net
>>242
tomlでエラー出てるなら
bot.pyで
config = toml.load(open("config.toml"))
っていう記述あるけど、config.tomlの中身がおかしいんじゃない?
246:デフォルトの名無しさん
22/10/07 13:38:21.48 6W+GCvSh0.net
Traceback (most recent call last):
File "test.py", line 31, in <module>
func1()
File "test.py", line 28, in func1
func2()
File "test.py", line 30, in func2
raise Exception("hogehogeException")
Exception: hogehogeException
こういうファイル名や行数とか出てないの?
247:デフォルトの名無しさん (ワッチョイ ff14-51cu)
[ここ壊れてます] .net
pyautogui素晴らしい最初に知りたかった
248:デフォルトの名無しさん
22/10/07 20:11:45.22 f7Qxxz6p0.net
ぴゃうとぐい
249:241
22/10/07 23:54:53.64 cLCpsl3k0.net
TOML のValidator で、TOMLファイルの形式が正しいかどうか、チェックすれば?
「toml validator online」で検索!
プログラマーなら、VSCode で、~/toml/decoder.py をデバッグするとか、
decoder.pyを差し替えて、
raise ValueError("Duplicate keys!") の前後で、ログ出力してみるとか
250:デフォルトの名無しさん
22/10/08 07:10:23.20 kX9hT5zA0.net
PyAutoGuiも便利だけど何でもできるかというとかなり限定的
画面がこういう状態になったらこの条件に合う部分を探して、
この範囲をコピーしてこのアプリに切り替えてコピペ
みたいなことはできない
251:デフォルトの名無しさん
22/10/08 07:26:14.47 Qqe7/SLY0.net
ディスプレイを切ったら動かないのも使いづらい
252:デフォルトの名無しさん
22/10/08 11:25:58.24 TDMvIP2Ta.net
ライブラリ関数の情報を調査する方法についての質問です
sagemathというpython wrapperにあるpolygon3dという関数がどういうキーワード引数を持っているのか調べたいのです
ググるとinspect.signature関数というのが見つかります
コレでpolygon3dを調べてみると
signature = inspect.signature(polygon3d)
print(signature.parameters)
OrderedDict([('points', <Parameter "points">), ('options', <Parameter "**options">)])
と出ます
おそらく位置引数'points'とキーワード引数がいくらかあるという意味だと思うのですがやはりコレが限界なんでしょうか?
どんな名前のキーワード引数を持ってるかの一覧表を出力するような方法はないもんなんでしょうか?
253:デフォルトの名無しさん
22/10/08 12:37:16.55 ymJkU01o0.net
>>250
オープンソースなんだからGitHubに見に行けばいいじゃん
254:デフォルトの名無しさん
22/10/08 14:49:02.11 hw6LN7oLa.net
>>251
そうなんです
実際sagemathは割とドキュメントもしっかりしててググれば一覧とかもあります
でもいちいちめんどくさいじゃないですか
もしかしたら各オプジェクトで利用可能なキーワード引数のリストを得る方法とか容易されてたら便利でいいなぁと
結構ググったのでなさそうではあるんですけど、調べて「あった」場合はともかく「ないなぁ」の場合、やはり最終的には強者に聞いてみないとダメかなと
255:デフォルトの名無しさん (ワッチョイ 4aa5-gAv1)
[ここ壊れてます] .net
ドキュメントをぶっこ抜いてその関数がどんな引数とるかのポップアップをエディタで出せばいい
256:デフォルトの名無しさん (ワッチョイ ca14-0xn2)
[ここ壊れてます] .net
pyautogui
エラー出さずにできましたが最適ではない気がします
下記のやり方より良い方法があれば教えて欲しいです
①
pyautogui.write() でエクスプローラーのアドレスにパスを打ち込む時
日本語や \ が入力できなかったり、最初の C: が C* に勝手に変わったりしました
・pyperclip を使って値をコピーしてから、pyautogui.hotkeyで貼り付けました
②
pyautoguiを使って検索したりクリックしたりする時
・画像認識してから次の処理する時は、while pyautogui.locateOnScreen() is None: で time.sleep(1) させて
・検索結果表示とか全選択とか、少し時間がかかりそうな箇所は逐一改行して「time.sleep()」を書きました
これを書くのが結構あってcodeが余計に長くなりました
257:デフォルトの名無しさん
22/10/08 15:27:35.37 bWQzA1rj0.net
pyautogui 便利だけどマウスとモニターが使用不可になるのだけは面倒でした
下のソフトの処理ができるなら別のもので構わないのですが、pyautogui以外でやってる人がいたら教えてください
・Adobe Acrobat
・Evernote ※Legacy版
・ソシャゲ全般(デイリー回収用)
258:デフォルトの名無しさん
22/10/08 15:49:00.05 kX9hT5zA0.net
ahkで簡単なことはやらせてる
python化されたahkがあればいいのにと思っている
259:デフォルトの名無しさん
22/10/08 15:57:12.38 IpF+MZYD0.net
ahkって何?
260:デフォルトの名無しさん
22/10/08 16:00:09.87 xEoQJfh1M.net
sleepが面倒なら画像名を指定するだけで待ち&クリックする関数を作れば良いんでない
バックグラウンドでの使用は、昔VPCを多重起動して使ってたことあるけど今でも出来るんかな
昔、某MMOでプロセスメモリの内容を読み取って動くマクロとか作ったけど
プロセスメモリが読めればエスパーなマクロが作れるよ
261:デフォルトの名無しさん
22/10/08 20:40:05.22 bWQzA1rj0.net
>>258
それでやってみます
ゲームに使えるならプロセスメモリもその内手を出しそうです
262:デフォルトの名無しさん (ワッチョイ 034f-6jYr)
[ここ壊れてます] .net
>>252
VSCode, Ruby では拡張機能で、関数の説明なども見れる
また端末から、そういうコマンドを実行しても見れるけど、
ブラウザで見た方が見やすいので、
一旦コマンドで説明をHTML ファイルにしてから、それをブラウザで見て、
見た後に、HTMLファイルを削除する。
これが自動で行われる
ただし、その関数・モジュールの作者が、
Doc コメントみたいな決められた様式で、コメントを書いている場合のみ
たいてい、Doc コメントの説明などは、
パーフェクトRuby などのパーフェクト・シリーズ本に書いてある
263:デフォルトの名無しさん
22/10/09 04:21:23.14 L81MTKQk0.net
クリップボードにpathlibのPathで指定した、不特定多数のファイルをコピーをしたいのですが方法が分かりません
コピーするファイルは、フォルダー・テキスト・画像・動画・PDF関係なく、PC上で選択してCtrl+Cできるファイル全てが対象です
pyautogui.hotkey(“Ctrl”,”v“) を使って貼り付ける予定です。※Evernote Legacyというメモアプリ上で使いたい
pyperclip、shutil、pillow関連の記事は見つかるのですが、クリップボードに複数・拡張子問わずコピーする方法が見
264:つかりません どうすればできるのか教えてください
265:デフォルトの名無しさん
22/10/09 04:59:04.96 L81MTKQk0.net
今のところPathにあるファイル名いじって、検索かけてから全選択して、pyautogui.hotkeyでコピーするという遠回りなやり方でしてみました
266:デフォルトの名無しさん
22/10/09 11:51:56.93 xdRBYpSIM.net
FileDrop形式に変換できれば良いんだろうけどパッと検索してみた限り難しそうだね
VSを使ってクリップボードを監視してファイル名が含まれていたらFileDrop形式に変換するアプリを自作するか
コピー用のtempフォルダにファイルを一旦コピーしてから全選択→貼り付けとかでも良さそう
267:デフォルトの名無しさん
22/10/09 16:29:09.15 L81MTKQk0.net
>>263
FileDrop形式という単語を知れただけでも良かったです。ありがとうございます
268:デフォルトの名無しさん
22/10/09 20:19:39.13 nf8IBTFd0.net
chm形式のヘルプが3.7までしか野良に無いんだけど、3.10(stable)のchmどこかに無い?
公式はDLしたいけど404でオンラインでしか参照できなくて困ってる
269:デフォルトの名無しさん
22/10/09 20:45:08.96 Ozrjh9EB0.net
>>265
公式にpython3107.chmあるし、落ちてくるよ
270:デフォルトの名無しさん
22/10/09 20:53:03.75 nf8IBTFd0.net
>>266
すまん、日本語版希望。。。
githubに3.7jpビルドしてる人の使ってる
271:デフォルトの名無しさん
22/10/09 23:28:35.38 t9JKJStV0.net
>>261
漏れは、Ruby で、drag&drop での複数ファイルの移動処理を作ったけど、
これはファイルのみに適用される。
フォルダの再帰的コピーも出来るみたい
require 'fileutils'
dest_dir = "C:/Users/Owner/Documents/tmp/"
# ARGV は、ドロップした複数のファイルパスの配列
ARGV.select { |full_path| File.file?( full_path ) } # ファイルのみ
.each do |full_path|
file_name = File.basename( full_path ) # ファイル名のみ
FileUtils::DryRun.move( full_path, dest_dir + file_name)
end
sleep # 出力したコマンドプロンプト画面を閉じないようにする
272:デフォルトの名無しさん
22/10/11 09:09:33.80 L++CLq2X0.net
すみません、jupyter labで下記のように記述して実行したんですが、エラーでサイトが開きません。原因わかる方いらっしゃいませんか?
url = ''URLリンク(telegram.org)''
browser.get(url)
エラー内容
NoSuchWindowException: Message: no such window: target window already closed from unknown error: web view not found
browser.getをdriver.getに変えて試してもみましたがダメでした。
urlについてはサイトに飛べることをurlクリックで確認しました。
273:デフォルトの名無しさん
22/10/11 09:22:50.72 S+x+TbIN0.net
エラーメッセージの内容を切り分けて質問しろよ
エラーの原因はすぐわかるだろ
web view not found
まぁ、こんな状態でスクレイピングとかアホかって感じだけど
274:デフォルトの名無しさん
22/10/11 09:43:03.84 L++CLq2X0.net
>>270
回答どもでーす
275:デフォルトの名無しさん
22/10/12 16:39:03.55 +cq2T5fE0.net
python 3.10.8インストールしようとしたらエラー出る
こういうやつな
URLリンク(pullanswer.com)
276:デフォルトの名無しさん
22/10/12 16:41:57.24 Q9qje2Sc0.net
ご愁傷様
277:デフォルトの名無しさん
22/10/13 13:50:28.26 uklwGmra0.net
>>272だけど今試したら3.10.8インストール出来た
URLリンク(www.python.org) のフォルダの属性設定を間違えてたらしい
よって>>273は昨日の時点ではインストールしてないとすぐに分かるんだね
278:デフォルトの名無しさん
22/10/14 23:30:33.11 0UzEEAJh0.net
>>294
できました!辞書型なら列追加できるんすね
279:デフォルトの名無しさん
22/10/15 01:53:05.91 gy4T8Zz60.net
df_merged = pd.concat([df.iloc[:, 0], df.iloc[:, 2]], axis=1)
280:デフォルトの名無しさん
22/10/15 08:25:41.38 w1fQiwU/0.net
iloc()じゃなくてiloc[]の時点で、何しとるのかよく判らん
281:デフォルトの名無しさん
22/10/15 10:37:21.32 Awb5Gbls0.net
URLリンク(pandas.pydata.org)
ドキュメント嫁
282:デフォルトの名無しさん
22/10/15 14:09:18.62 wUAlKc2l0.net
質問です。
配列内にアルファベットの要素がランダムに複数個入っています。
これらの要素をなるべく隣り合わないように並べ替えるにはどうするといいでしょうか?
例:AAABBC -> ABACAB
283:デフォルトの名無しさん
22/10/15 14:14:45.53 w1fQiwU/0.net
不可能なパターンがあるな
284:デフォルトの名無しさん
22/10/15 14:20:59.88 1JUKlkYAM.net
>>279
なるべくっていう処理はコンピュータには不可能
きっちり仕様として示せる処理でなければならない
285:デフォルトの名無しさん
22/10/15 14:30:34.17 ttRM3D3c0.net
>>279
隣合うのが不可避の場合どうするのか
前に溜めるのか後ろに溜めるのか
2文字ずつ並ぶ→3文字ずつ並ぶのように緩和するのか
286:デフォルトの名無しさん
22/10/15 14:38:02.16 PHpzEK3Ka.net
>>281
最短を目指すとかよくあると思うけど
287:デフォルトの名無しさん
22/10/15 14:45:59.33 wUAlKc2l0.net
>>282
前後に貯めるのではなく、2文字ずつ並ぶ→3文字ずつ並ぶのように緩和できるようにしたいです。
例:AAAAAABBC -> AABAACABA
288:デフォルトの名無しさん
22/10/15 14:49:24.73 w1fQiwU/0.net
AABAACABA はNG箇所が2だけれど、
AAABACABA にすると1箇所で済む
2連続2箇所よりも3連続1箇所の方がスコアが低くなる評価関数の定義が必要
289:デフォルトの名無しさん
22/10/15 14:49:49.52 VXb7W7XW0.net
こういうパズル的なのはプログラミングお題スレで出題する方が早く回答が付きそうだな
290:デフォルトの名無しさん
22/10/15 14:51:37.73 VXb7W7XW0.net
>>285
n連続は1箇所につき2^n点のペナルティを課すとかは?
291:デフォルトの名無しさん
22/10/15 14:55:21.58 1JUKlkYAM.net
>>286
いや、ていうかよく考えたらこの質問Python関係ないじゃんね
292:デフォルトの名無しさん
22/10/15 15:03:04.47 wUAlKc2l0.net
>>288
すいません。
使っているのがpythonだったのでここで質問しました。
やはり難しいようなので、皆さんのコメントを参考に自力で考えてみようと思います。
ありがとうございました。
293:デフォルトの名無しさん
22/10/15 15:15:21.01 ttRM3D3c0.net
>>284
26要素のリストで各文字の個数をカウント
最大のものを見つけ出す
最大/他全部で連続個数が分かる
最大の文字を連続個数並べて他の文字を順番に挟む
挟む時は各文字の文字数をつじつま合うようにリストをカウントダウンして調整
同じ文字は可能な限り離したいとか条件追加するともっと難しくなる
294:デフォルトの名無しさん
22/10/15 15:17:51.26 ubtsaD1N0.net
>>280
ちゃんと確認してないけど、交互に置けない場合が条件になるのかな?
不可能条件
最頻出文字数 > 文字総数/2
かな
295:デフォルトの名無しさん
22/10/15 15:17:59.84 ttRM3D3c0.net
文字の挿入は総数がつじつま合うようにもっと工夫が必要だな
まあ頑張ってくれ
296:デフォルトの名無しさん
22/10/15 15:18:54.05 ubtsaD1N0.net
かぶった上に劣化だった><
297:デフォルトの名無しさん
22/10/15 15:33:35.79 wUAlKc2l0.net
>>290
>>291
ありがとうございます。
試してみます。
298:デフォルトの名無しさん
22/10/15 15:53:38.83 2u2iBEwS0.net
>>283
「なるべく」は結果についての話
最短は手順の話だから違うよね
299:デフォルトの名無しさん
22/10/15 16:21:01.13 w1fQiwU/0.net
ガチでなるべくなヒューリスティックな問題の方が現実には多い
300:デフォルトの名無しさん
22/10/15 16:39:39.77 ywjmScUEa.net
>>295
今回は結果の話しかないよな
301:デフォルトの名無しさん
22/10/15 17:41:55.96 Hv7z/9nw0.net
思いつきだけど
[合計文字数][26]の2次元配列を作る
各文字ごとに均等に配置
空白部分には空白なりNoneなり入れる
2次元配列を縦方向に連結して1次元配列にする
空白を除去する
ってのはどう?
aaabbc
[a,n,a,n,a,n]
[b,n,n,b,n,n]
[c,n,n,n,n,n]
abcaba
302:デフォルトの名無しさん
22/10/15 17:50:25.10 ttRM3D3c0.net
>>298
合計じゃなくて最大個数の文字数でいいな
303:デフォルトの名無しさん
22/10/15 18:29:11.63 a1geBJ2n0.net
for文の途中で条件に当てはまったら、for文の任意の値から処理を再開させる書き方とかありますか?
例えば「for x in range(10):」とあったとして、7の途中で条件に当てはまったら、3から再開してそのまま最後まで処理するみたいな
304:デフォルトの名無しさん
22/10/15 18:32:12.78 VXb7W7XW0.net
while使った方がいい
305:デフォルトの名無しさん
22/10/15 18:48:06.23 w1fQiwU/0.net
処理で条件が変わるような場合は、whileにしてもハマる
いつ終わるか判らないようなループは本質的に不安定
306:デフォルトの名無しさん
22/10/15 18:48:39.13 i+M+Mx9R0.net
再帰でいいのでは?
307:デフォルトの名無しさん
22/10/15 18:52:19.28 2u2iBEwS0.net
>>300
そういうジェネレータ作ってrangeと置き換えればいいんじゃね
308:デフォルトの名無しさん
22/10/15 19:03:32.69 jl8SG5IY0.net
あんま綺麗じゃないけど、こんな感じでいいのか?
競プロの連中ならもっとスマートなの書いてくれるはず
text = "aaabbc"
char = "abcdefghijklmnopqrstuvwxyz"
char_dict = []
for c in char:
____count = 0
____for t in text:
________if c == t:
____________count += 1
____if count > 0:
________char_dict.append({"name":c, "count":count, "left":count})
char_dict = sorted(char_dict, key=lambda e: (e["left"], -e["count"]), reverse=True)
result = ""
pre = ""
for _ in text:
____ci = 0
____while True:
________now = char_dict[ci]["name"]
________if now == pre:
____________ci += 1
________else:
____________result += now
____________pre = now
____________char_dict[ci]["left"] -= 1
____________char_dict = sorted(char_dict, key=lambda e: (e["left"], -e["count"]), reverse=True)
____________break
print(result)
309:デフォルトの名無しさん
22/10/15 19:10:00.74 jl8SG5IY0.net
よく見たら、聞くまでもなくダメなやつだなすまん
310:デフォルトの名無しさん
22/10/15 19:57:10.99 icx3tYx0M.net
>>305
とりあえずcollectionsのCounterだけは覚えようか
311:デフォルトの名無しさん
22/10/15 20:30:20.03 Hv7z/9nw0.net
Numpyで作ってみたで
URLリンク(ideone.com)
312:デフォルトの名無しさん
22/10/15 20:30:36.10 Ji35UDrea.net
きったね
313:デフォルトの名無しさん
22/10/15 20:48:46.65 jl8SG5IY0.net
>>305
ありがとう
このソートって思ったよりも難しいな
ツリー構造は理解できねえわ
314:デフォルトの名無しさん
22/10/15 21:15:49.97 jl8SG5IY0.net
アンカミスってた
>>307
ありがとう
315:デフォルトの名無しさん
22/10/16 01:02:14.69 moLuv1n40.net
>>279
URLリンク(ideone.com)
すごーく分かりづらいけど、2種類に分けて導き出した
区切り文字中心に考えたのに、そこで処理を分けてない体たらく
あと、同じ文字は出来るだけ遠く?は難しかった
〆切ってそうな話題ですまん、Python覚えたくてやってみた
316:デフォルトの名無しさん
22/10/16 20:28:46.68 MD6QHwBW0.net
質問です。
vscordとpycharmと他のパイソン系なのですが
「マルチグラボ」対応してるのを探してます。
お勧めはありますか?
317:デフォルトの名無しさん
22/10/16 20:56:42.88 tl8sUwzf0.net
Windowsで作成した画像を外付けHDDに保存する。
※macとWindows共通で使えるFAT32使用
それをmacPCのpythonのglobで画像のパスを読み込んだ時に
「バスケ」や「ポケモン」などの濁点と半濁点の検索ができません。
※printで中身を見るとあります。
原因や対処方法がありましたら教えて下さい。
318:デフォルトの名無しさん
22/10/16 21:20:40.98 F/Fiy6Pc0.net
unicodedata.normalize()
319:デフォルトの名無しさん
22/10/16 21:28:07.05 cG9YvU2e0.net
あれはあれでunicodeなんだよな
統一できてない
320:デフォルトの名無しさん
22/10/16 21:50:36.51 tl8sUwzf0.net
>>315
ありがとうございます。
うまくできました。
321:デフォルトの名無しさん
22/10/16 22:24:25.86 U1duiFVid.net
>>279
これ貪欲法で解ける??
解けるならAtcoderのCくらいででそう
322:デフォルトの名無しさん
22/10/16 22:53:43.69 1lEHOAQp0.net
Mac は「ハ + 濁点」「ホ + 半濁点」に分割しているのか
1文字にまとめるのが普通
323:デフォルトの名無しさん
22/10/16 23:02:52.94 cG9YvU2e0.net
昔からそうだったとかでもないのに
デファクトスタンダードに合わせるのは嫌というイキりたいOSの性格が現れている
324:デフォルトの名無しさん
22/10/16 23:16:15.14 N+fxT3Y10.net
昔はバやパを平気で使ってたぞ
325:デフォルトの名無しさん
22/10/17 00:13:29.63 uAMFVFmC0.net
半角カナを全角に変換した時に
文字数が変わるのを許容できるかという問題
326:332
22/10/17 01:43:17.91 fAAk7KG50.net
>>279
URLリンク(ideone.com)
内包表記とスライスを使ってみた
・・・Pythonヤバすぎる、便利すぎる
327:デフォルトの名無しさん
22/10/18 01:25:14.77 zc0QoIzs.net
単純なy1,y2の差ではなく、
y1がy2をcrossover(上抜け)したところの値とy2との差を、crossunderするまで取り続ける
y1がy2をcrossunder(下抜け)したところの値とy2との差を、crossoverするまで取り続ける
そのデータを取得したいのですが
何かうまい具合にできないものでしょうか
where使って切り替わりの判別はできたのですが
import numpy as np
import matplotlib.pyplot as plt
fig, ax = plt.su
328:bplots() t = np.linspace(0, 10, 1000) y1 = np.sin(t) y2 = np.cos(t) ax.plot(t, y1) ax.plot(t, y2) fig.tight_layout() plt.show() np.where(y1>y2,1,0)
329:デフォルトの名無しさん
22/10/18 10:34:44.39 jjMTEoo10.net
test = set(A[‘A1’] for B in C[‘C1’] for A in B[‘D’] )
ってどういうコマンドなんでしょうか。
入れ子が多すぎてよくわからず…
何がどう処理されてtestには何が入るんでしょう?
330:デフォルトの名無しさん
22/10/18 10:55:11.72 RkLeKawPM.net
バラせば済む話だわな
331:デフォルトの名無しさん
22/10/18 11:05:17.60 xDZsbnE90.net
test = set(...) は
URLリンク(docs.python.org)
なんで置いといて中身の話だけど
A['A1'] の所を一時的に C B A と順に3回置き換えて動かすとみえてくるかも
332:デフォルトの名無しさん
22/10/18 11:09:45.56 jjMTEoo10.net
>>326
バラす場合は
test = set(A[‘A1’]
for B in C[‘C1’]
for A in B[‘D’] )
ここでバラすってことですかね?
333:344
22/10/18 12:45:29.61 zc0QoIzs.net
ゴテゴテになりましたがなんとかできました
URLリンク(ideone.com)
#0.0 97
#crossover sin,cos 2
#crossunder sin,cos 1
334:デフォルトの名無しさん
22/10/18 12:56:03.93 41XzDqyZM.net
>ここでバラすってことですかね?
>>328
フィルタリングしてるのはわかってるやんな?
335:デフォルトの名無しさん
22/10/18 13:24:53.77 jjMTEoo10.net
>>330
すみません
フィルタリングってなんでしょうか…?
336:デフォルトの名無しさん
22/10/18 14:51:24.85 5thtfPTiM.net
>>325
forループに直して読めばいい
test = set()
for B in C[‘C1’]:
__for A in B[‘D’]:
____test.add(A[‘A1’])
あまりいい内包表記の使い方ではない
337:344
22/10/18 14:53:46.55 zc0QoIzs.net
差とったバージョン貼るの忘れてました >>329
URLリンク(ideone.com)
せっかくnumpyやpandas使っているのにforで回す感じが納得できませんが妥協します
338:デフォルトの名無しさん (アウアウアー Sa7f-40n0)
[ここ壊れてます] .net
直前のコマンドの実行結果の確認ってどうやるんですか?
shellで言う、echo $? をやりたい
339:デフォルトの名無しさん
22/10/18 20:19:11.20 wvci1M8ka.net
[{'id': 1, 'name': 'hogehoge', 'start_time': datetime.time(22, 0)}]
ってリストを
{'id': 1, 'name': 'hogehoge', 'start_time': datetime.time(22, 0)}
と言う辞書に簡単に変換する方法ってありますか?
クエリーセットから辞書に出来れば一番いいんだけど...。
340:デフォルトの名無しさん
22/10/18 20:24:46.13 BZdlnClE0.net
>>335
普通に最後に[0]つけるだけでは?
341:デフォルトの名無しさん
22/10/18 20:27:28.02 8ovbGjhuM.net
>>333
こんな感じじゃ駄目?
URLリンク(ideone.com)
342:デフォルトの名無しさん
22/10/18 20:32:38.62 wvci1M8ka.net
>>336
ほんまや!ありがとう!
343:デフォルトの名無しさん
22/10/18 21:48:30.15 zc0QoIzs.net
>>337
cross地点のラインとか見やすくていいですね
実際に使うチャートのプロットに使ったら良い感じになりました!
ありがとうございます!!
344:デフォルトの名無しさん
22/10/19 11:35:50.09 XPI64Z3+0.net
Wsl2上Ubuntu20.04でtorch使って機械学習させてたんだけど、3万イテレーションぐらいで
Segmentation fault
とだけ出て落ちてた
VRAMの容量が不足したと考えてあってる?
あとLinux環境でこれをデバッグするなら何がいいか教えて欲しい
345:デフォルトの名無しさん
22/10/19 11:54:47.46 tuP7W/zl0.net
SageMakerだな
346:デフォルトの名無しさん
22/10/19 12:36:42.67 rgBskw8B0.net
Linuxの組み込みRuby・mruby とかは、Top, Valgrind などを使うのかな?
347:デフォルトの名無しさん
22/10/19 22:23:16.68 3NiqH8qVM.net
>>1
p = [0,1]
q = [2,3]
を
r = [0,2,1,3]
にまとめたい、、、
348:デフォルトの名無しさん
22/10/19 23:34:10.81 bkANZ+VWM.net
>>338
良かった。おめでとう
>>343
zipとflatten使えばできる、flattenは自前で書いても可
349:デフォルトの名無しさん
22/10/19 23:37:46.30 bkANZ+VWM.net
>>340
再現性あるかどうかは大事。ないなら電圧降下とか宇宙線とか回避できない事象かもしれない。
再現性あるならまずはメモリのテストとか?
350:デフォルトの名無しさん (ワッチョイ efe8-TyQf)
22/10/20 00:13:53.61 mcMX29GY0.net
メモリ壊れててSegmentation faultは運良すぎる
十中八九バグ踏んでる
351:デフォルトの名無しさん (アウアウウー Sacf-zhLr)
22/10/20 00:21:35.47 Ia5AvZ4ba.net
>>340
まずは普通のubuntu環境でやってみな
352:デフォルトの名無しさん
22/10/20 06:33:42.06 h2hzFpVPM.net
note.nkmk.meブログ書いてる人は一体何者なん?凄すぎでしょ
353:デフォルトの名無しさん
22/10/20 09:06:52.31 rssHMFyJM.net
>>344
ありがとう
354:デフォルトの名無しさん
22/10/20 11:03:22.52 rq8DqaFj0.net
.pyの拡張子のプログラムファイル送られてきたんだが
ひらきかたがわからん
355:デフォルトの名無しさん
22/10/20 11:07:41.43 5IJGeHxC0.net
単に開きたいならテキストエディタでおけ
よくわからんものをいきなり実行しないほうがいいでしょ。
356:デフォルトの名無しさん
22/10/20 11:33:20.98 SiOwIn850.net
送ってきた相手が知人だとしても疑うべき
357:デフォルトの名無しさん
22/10/20 11:59:34.42 rq8DqaFj0.net
返信ありがとう。
ココナラの仕事関連で贈られたブツだから
妖しくはないと思う。
ただひらき方がわからんだけw
テキストね。ありがとう!
358:デフォルトの名無しさん
22/10/20 14:07:22.08 rq8DqaFj0.net
.pyだからgoogle colabとかvsでもひらけますか?
359:デフォルトの名無しさん
22/10/20 14:15:44.78 SM0e0PhV6.net
はい。
360:デフォルトの名無しさん
22/10/20 14:46:25.62 VKVL3k1N0.net
すまんが、開発環境について教えて欲しいんだけどさ
NumPyの行列がどんな形してるか、あらかじめ推測がつく場合にVSCodeのエディタ上で表示してくれるような機能ってなんかないのかな?
あったら教えてほすぃ
361:デフォルトの名無しさん
22/10/20 15:41:29.99 Ia5AvZ4ba.net
ない
型で指定できない以上無理
362:デフォルトの名無しさん
22/10/20 16:40:26.62 fK+SugQF0.net
URLリンク(numpy.org)
これで型ヒント書いてPylance/Pyrightさんがどこまで対応してきてるかやな
363:デフォルトの名無しさん
22/10/20 16:52:22.34 rq8DqaFj0.net
>>355
今グーグルコラボひらいたんやが。
ファイル、編集、表示、挿入などあるけど。
なかなかファイルを読み込むっていうのができひんねん。
教えて下さい!
364:デフォルトの名無しさん
22/10/20 16:55:29.69 rq8DqaFj0.net
ファイル→ノートブックをアップロード→ダウンロードできひんw
365:デフォルトの名無しさん
22/10/20 17:02:32.17 5IJGeHxC0.net
当該ファイルをテキストエディタで開いてコピペしたらええんでないの?
366:デフォルトの名無しさん
22/10/20 17:44:01.65 aiWxu/Mz0.net
Pythonの乱数はCPUのbit長とあまり関係ないみたい
64bit= 8バイトや128bit = 16バイトが効率がいいのかとおもったが
一度にまとめて長いのを生成したほうがいいみたい
URLリンク(ideone.com)
import random
from time import perf_counter
def randcomp(byte = 4, loop = 100000):
N =[]
K =[]
for i in range(3):
K.append(2**i)
N.append (2**(8*byte*K[-1]) -1)
for i in range(3):
t = perf_counter()
for n in range(loop * int(4/K[i]) ): random.randint(0, N[i])
t = perf_counter() - t
print("%d%s : %0.3f sec" % (8*byte*K[i], "バイトで乱数生成" , t), flush=True)
print("同一長乱数はまとめて生成したほうがいいが分割したほうがいいか")
randcomp(100, 30000)
367:デフォルトの名無しさん
22/10/20 18:21:28.94 fK+SugQF0.net
>>362
URLリンク(docs.python.org)
> ほとんど全てのモジュール関数は、基礎となる関数 random() に依存します。
ソースまで追ってないけど係数掛けてるだけでない?精度求めないなら構わないけど
368:デフォルトの名無しさん
22/10/20 18:38:57.83 aiWxu/Mz0.net
納得
整数の乱数も浮動小数点から生成してるのね
整数値はCPUの整数演算から生成してるとおもってた
369:デフォルトの名無しさん
22/10/20 18:57:44.54 0LxHKv3Y0.net
>>356
PyCharmのPro版ならそういう機能あったかも。まあ有料だけど
370:デフォルトの名無しさん
22/10/20 19:05:49.55 VKVL3k1N0.net
年3万かあ・・・・教えてくれたのはありがたいけどちょっとこれは・・・・
371:デフォルトの名無しさん
22/10/20 19:38:31.27 tMcnfqkZa.net
randomは整数じゃないか?
372:デフォルトの名無しさん
22/10/20 19:57:06.72 zFT+mBQ80.net
熱雑音から生成するのなかったっけ
373:デフォルトの名無しさん
22/10/20 20:09:52.87 tMcnfqkZa.net
あるよ
量子論的ななんかもあるよ
374:デフォルトの名無しさん
22/10/20 20:13:14.05 zFT+mBQ80.net
大勢で祈ると値が偏る奴
375:デフォルトの名無しさん
22/10/20 20:18:06.06 SiOwIn850.net
競馬場でやって
376:デフォルトの名無しさん
22/10/20 20:59:29.59 kx/1mwDkM.net
計算結果を観測するまで分からない乱数
377:デフォルトの名無しさん
22/10/20 21:14:59.71 zFT+mBQ80.net
量子使う奴は意思が入り込むよ
未来の科学ではそんなの当たり前になってるだろうけど、現時点ではオカルト
二重スリット実験とかも本当は不思議でも何でもない
378:デフォルトの名無しさん
22/10/20 23:49:24.98 PbiytdPqM.net
ほんとの乱数を使う必要がある場合と疑似乱数でいい場合は区別したほうが良くないか。
Pythonで出し分ける方法は調べてないから知らないけど。
379:デフォルトの名無しさん (ワッチョイ ef66-MUdf)
22/10/21 08:18:44.01 qQxL52gE0.net
seedを物理的に作ってあとは擬似乱数だな
組み込みだとADコンバータのLSBを使ったりする
380:デフォルトの名無しさん
22/10/21 08:50:48.36 Yzioqt7t0.net
pythonの資格取りたいんですが難しいですか?
どれくらい勉強すれば行けますか
381:デフォルトの名無しさん
22/10/21 13:17:33.66 d7WYWX6T6.net
>>345-347
wsl2上ではイテレーションはまちまちだけど再現してる
ノーマルなubuntu環境構築して再現性あるか見てみるわ
382:デフォルトの名無しさん
22/10/21 16:11:11.34 QvDTOA5Y0.net
>>376
2万時間くらい
383:デフォルトの名無しさん
22/10/21 17:01:14.33 Yzioqt7t0.net
>>378
2万時間の根拠は?
384:デフォルトの名無しさん
22/10/21 17:19:59.05 KvwM7lznM.net
調べりゃ解ることを
わざわざ聞くやつは
2マン時間で十分だと言うことだろう
385:デフォルトの名無しさん
22/10/21 17:25:07.63 2aEevlzi0.net
調べると分かるのか
386:デフォルトの名無しさん
22/10/21 17:50:39.73 +NQJkQPg0.net
小さめファイルのハッシュ値を計算したい人です
ファイルIOにかかる時間のほうが圧倒的に時間食うことがわかりました
ハッシュ計算が3倍遅いほうでも差がほぼないようです
387:デフォルトの名無しさん
22/10/21 17:52:02.77 +NQJkQPg0.net
ここに書き込んだのでは話ではなかった
388:デフォルトの名無しさん
22/10/21 18:01:25.42 Ty04Hsfm.net
データフレームのある列で、0が連続する値だけを起点にデータを分割する
いわゆるビニング処理をしたいのですが
こういう感じにしました
URLリンク(ideone.com)
たぶん期待通りの処理(df_sample["b"]で0以外の値が連続するブロックだけ抽出)になったのですが
改善できないでしょうか
389:デフォルトの名無しさん
22/10/21 21:02:47.32 QvDTOA5Y0.net
>>379
君には難しいだろう。
たぶん無理だから諦めた方がいい。
Pythonは統計とマシンラーニング課題も出るからそれらの背景知識がなければ受からないと考えたほうがいいし、Pythonを学ぶ意味も意義もなんの価値もない
というのと、そんなことでいちいち根拠は?と思考停止する程度であればなにも成すことはできない。
よってそれら含めて知識として習得するつもりがあり、そのはじめの一歩として資格試験に挑戦するというのであれば、勝手に挑戦すればいい
390:デフォルトの名無しさん
22/10/21 21:10:42.50 QvDTOA5Y0.net
>>379
マジで厳しいこというかもしれないが
何のためにその資格を取りたいと思ったのか
何のためにPythonを学ぼうと思ったのか
心から学びたいと言う欲求があなたの中にあるのか
あなた自身がこれら命題に答えられなければ、時間の無駄になるだろう
391:デフォルトの名無しさん
22/10/21 21:15:29.58 NoO+J0RZ0.net
>>385
392:デフォルトの名無しさん
22/10/21 21:23:51.77 BRobyhizH.net
愚直おじさん流
URLリンク(ideone.com)
393:デフォルトの名無しさん
22/10/21 21:29:44.35 Yzioqt7t0.net
>>386
めっちゃ早口で言ってそう
394:デフォルトの名無しさん
22/10/21 21:34:27.68 xWrdmgB3M.net
Pythonは一般人でも使いやすいからシェアNo.1になってるような言語でしょ
ラズパイIoTでも使うしAIのためだけの言語では無いよ
395:デフォルトの名無しさん
22/10/21 21:37:59.27 7KwYuZana.net
>>376
URLリンク(m.youtube.com)
仕事で使う人で2年程度はかかるらしいよ
396:デフォルトの名無しさん
22/10/21 21:39:34.25 qQxL52gE0.net
ひろゆきが言ってるんだから嘘に決まってるだろ
397:デフォルトの名無しさん
22/10/21 23:30:16.98 X//QLN3D0.net
ひろゆきは自分で試していない。
検索して、それを話しているだけ
自分の経験に基づかないから、いつも話が浅い。
だから聞くだけ、時間の無駄
検索して分かるような事しか話さない
Python は良いみたいですよ。
流行っているからとかw
398:デフォルトの名無しさん
22/10/21 23:38:32.06 X//QLN3D0.net
Python は文系は無理。
大学院数学科か、AWS 機械学習の資格が必要
だから、YouTube で有名な雑食系エンジニア・KENTA とか、
たにぐちまことも、Pythonの動画を作れない
だから、英語だけできる文系女は皆、Ruby on Rails へ行く。
Railsは算数で十分
Pythonの文法だけ知っている香具師は、いらない。
仕事ができないから
399:デフォルトの名無しさん
22/10/21 23:39:38.76 2aEevlzi0.net
フランス語で講釈たれたときもそうだな
フランス語の専門家が誤りに突っ込んできて
それで黙ってしまった
400:デフォルトの名無しさん
22/10/21 23:48:12.69 sRGYRPn90.net
>>389
効いてて草
401:デフォルトの名無しさん
22/10/22 00:19:42.69 zwJTxOqra.net
ケンタって人pythonをスルーしてるのはなぜなんだろう
402:デフォルトの名無しさん
22/10/22 00:46:25.52 5ajtmD/n0.net
KENTA は文系でしょ。
TOEIC も、800点以上取っていたかも?
英語ができるから、10言語以上のプログラミングに強い
でも、Python は別。
大学院レベルの特殊な勉強が必要だから、文系では無理
403:デフォルトの名無しさん
22/10/22 00:55:51.48 OES5lhv+a.net
うーんニューラルネットワークってそんなに難しいことしてないんだけどな
404:デフォルトの名無しさん
22/10/22 04:24:24.02 +A4lsW440.net
ニューラルネットワークはともかく、他の言語出来たらPythonだって出来るでしょ。NumPyとかPyTorchだけがPythonじゃないし。なんか知らんYouTuberを根拠にするとか頭おかしすぎる 正直BASICみたいなもんだろ、
405:デフォルトの名無しさん
22/10/22 04:31:36.51 x/c/WoEY0.net
PythonはCとかで作れられたソフトのラッパーにすぎないだろ
元の操作が難しくても初心者向けにラッピングしてあるんだろ
BASICみたいというのはその面あるかと
当時だとアセンブラのラッパーといえるだろうが
406:デフォルトの名無しさん
22/10/22 04:40:27.23 x/c/WoEY0.net
Pythonで記述法が独特だとおもってたけど
いま高級言語の FORTRAN BASICを調べたらまあまあ似てた
407:デフォルトの名無しさん
22/10/22 05:47:55.19 7jLTm2VBM.net
とにかく手軽で便利、マルチプラットフォームで動く高機能なスクリプト言語
一般人から研究者まで、エンジニアじゃなくても手軽に扱えるシェアNo.1のプログラミング言語
さあ今すぐPythonを始めよう!
408:デフォルトの名無しさん
22/10/22 06:53:31.27 J46viSc60.net
プログラム全く触ったことなくても独学でもいける?
409:デフォルトの名無しさん
22/10/22 07:35:37.88 7AfcIHJs0.net
やる気次第でしょ
インフラ屋さんだけどPythonとGoがあれば仕事が楽になる
410:デフォルトの名無しさん
22/10/22 14:21:00.87 8gOeqRywp.net
生まれて初めてカキコします。
pythonでエクセル内の
指定したセル範囲を画像として保存することはできるのでしょうか?
openyxl等の使い方を見ましたが該当する機能が見つからず。。。
411:デフォルトの名無しさん
22/10/22 14:33:36.41 RBHYYj24a.net
カキコって何歳
412:だよ 画像は難しそうだよな ブラウザ経由ならまだ割となんとかなるかもしれんけど
413:デフォルトの名無しさん
22/10/22 14:43:30.59 N7+wBa/e0.net
URLリンク(support.microsoft.com)
うーん
414:デフォルトの名無しさん
22/10/22 14:58:25.99 5YUu7WUo0.net
xlwingsでExcel操作してセルを表示
URLリンク(learn.microsoft.com)
もしこの操作ができるならpillowのImageGrab.grabclipboardで画像化
できそうにないなら同じくImageGrab.grabでスクショ
415:デフォルトの名無しさん
22/10/22 15:10:03.03 /+WXYBmxM.net
>>406
5chははじめてか、力抜けよ
画像は難しい(意訳: 無理とは言ってないが見当がつかない)
416:デフォルトの名無しさん
22/10/22 18:12:09.05 r8ZBR+82H.net
>>404
そんなことを逝っていたらいつまでたっても創められない
なんでもいいからすぐにやれ!
417:デフォルトの名無しさん
22/10/22 18:42:20.42 J46viSc60.net
>>411
わかった、明日本屋さん行ってくる。
418:デフォルトの名無しさん
22/10/22 18:44:23.56 OES5lhv+a.net
>>404
無理
そういう質問してくるやつは全員使い物にならなかった
419:デフォルトの名無しさん
22/10/22 19:41:53.56 +A4lsW440.net
独学で行ける奴は独学で行けるかどうか質問する前に独学できる範囲は独学しちゃうからなあ。
その質問が出る人と出ない人の違いが不思議だよね。
子供の頃に近くに誰も教えてくれないジャンルで何かを自分で調べてやったかどうかの違いなのかなあ。
420:デフォルトの名無しさん
22/10/22 19:55:08.06 YnOyl9oPM.net
全くのプログラミング初心者はCとJavaをやってからPythonやるのおススメ
するとCでポインタに挫折し、Javaでオブジェクト指向に挫折するはず
次にPythonをやると大幅に難易度が下がり感激して習得が進む
421:デフォルトの名無しさん
22/10/22 20:14:23.22 TcV0m7it0.net
独学ってなんだろうなとは思う
今やネット使えば相互で学びを得られるわけだし
422:デフォルトの名無しさん
22/10/22 20:15:49.62 OES5lhv+a.net
できるやつはそんなくだらない質問してる間に書いてるからな
よほど頭が良いやつを除けばプログラミングなんてスポーツに近い
ある程度書きまくって理解するという面がかなりある
423:431
22/10/22 20:35:33.98 kATB1i3DH.net
>>412
素直でよろしい
わからないことがあったらすぐにここで聞くがよい、少なくとも私は答えてあげよう
424:デフォルトの名無しさん
22/10/22 20:36:23.36 F0QzgmDAM.net
変なトレーナーだと上達も遅いし悪い癖がつく
425:デフォルトの名無しさん
22/10/22 21:47:35.31 cKHN2pKRH.net
?
426:デフォルトの名無しさん
22/10/22 23:09:50.86 SZlNO/Fu0.net
PythonのpyautoguiでDMMGAMEPLAYERのクリック操作ができません
多分他にもできないソフトや操作がある気がします
できるようにする方法をご存知の方いませんか?
427:デフォルトの名無しさん
22/10/22 23:15:54.82 r1O0tjlF0.net
管理者権限では
428:デフォルトの名無しさん
22/10/22 23:23:38.12 SZlNO/Fu0.net
管理者権限でPythonやVSCodeを動作させるというのはやってみましたがダメでした
それとは違うものですか?
429:デフォルトの名無しさん
22/10/23 00:17:15.41 a/Rc5ERJM.net
クリックスピードが速すぎて認識しないことあったけどそれとは違うかな
430:デフォルトの名無しさん
22/10/23 05:29:58.37 LnniM1YV0.net
循環参照とグローバル変数の解放忘れは
どうにもならずでよい?
431:デフォルトの名無しさん
22/10/23 07:56:50.73 YjL8eIdN0.net
>>421
それなー制御レイヤでガードがかかってて出来ないんだよ
仮想環境でプレイヤー動かして外からマウス操作するとできる
ahkならうまくいくと昔見た気がする
432:デフォルトの名無しさん
22/10/23 08:34:16.23 a/Rc5ERJM.net
昔MMOでマクロ動かしてたときにjoytokeyは通るのにUWSCが通らないのは何でだと思ったらJoytokeyは使ってるAPIが古かったのを思い出した
433:デフォルトの名無しさん
22/10/23 20:18:15.84 VvU+DrMM0.net
GUIは他で作って呼べばいいやとか思ってたけど
触ってみたら楽しくなってきちゃった…
434:デフォルトの名無しさん
22/10/23 20:40:08.90 YdoHOOqzM.net
自分で使うのは勝手だが、他人に無理に使わせようとして面倒をかけないようにしろよ
435:デフォルトの名無しさん
22/10/23 21:21:44.61 E8ProAkZ0.net
パイソンって何のOSで作って、何のOSで動かして
どんなハードウェア使ってるのかイメージわかない
436:デフォルトの名無しさん
22/10/23 21:29:22.91 QUHPaesz0.net
>>430
パイソン以外なら分かるのか?
437:デフォルトの名無しさん
22/10/23 22:09:00.29 HOBBKeJ+a.net
>>430
え?
438:デフォルトの名無しさん
22/10/23 22:20:33.87 PSjFlE960.net
昔はアプリ内スクリプティングによく使われてたし
そこまでOS依存ないよね
439:デフォルトの名無しさん
22/10/23 22:22:13.84 Gerqh3Hc0.net
今は何が使われてるの?
440:デフォルトの名無しさん
22/10/23 22:22:47.20 NZM9O6ur0.net
>>430
何のOSでと言ってる時点で適性無さすぎ
441:デフォルトの名無しさん
22/10/23 22:40:47.26 ryZHmhMT0.net
渋谷のOSは人気があったんだけど、なくなってしまいました
442:デフォルトの名無しさん
22/10/23 23:07:36.81 ukbFQOFRM.net
「オーエス!オーエス!」
謎の掛け声の語源は?
443:デフォルトの名無しさん
22/10/23 23:21:29.90 EIV6aNFQM.net
>>435
いやーこの辺の理解は難しいよ
俺はPythonがC言語で作られていることを知っているが
C言語が何で作られているかは知らない
444:デフォルトの名無しさん
22/10/24 00:31:12.46 GUF0AyIv0.net
>>438
大本の大本を辿ればハンドアセンブルに行き着く
始めは機能が限定されたCコンパイラを作り、だんだん必要な機能全てが揃ったCコンパイラを作る
445:デフォルトの名無しさん
22/10/24 01:02:39.86 aNKyy4xv0.net
最初のは計算ごとに配線を替えてたぞ
446:デフォルトの名無しさん
22/10/24 01:09:51.15 m3/1dAn60.net
>>438
え?
Cコンパイラ使ったことあらず?
447:デフォルトの名無しさん
22/10/24 02:58:26.65 wO6abJhfM.net
>>441
Cコンパイラが何でできているか知っているのは
コンパイラを作った人だけだからね
君は作ったことあるのかい
448:デフォルトの名無しさん
22/10/24 03:19:34.54 m3/1dAn60.net
>>442
gcc知らず?
clang知らず?
cl知らず?
何でできてるかって実装言語?
gccならCだよ
clangはC++
clは詳細はわからんがC/C++でしょう
449:デフォルトの名無しさん
22/10/24 05:15:28.86 p6w8R1yaM.net
キーワード引数の違いで引数cがあるときだけ下側を呼ぶような関数オーバーロードってできないんですかね
def myfunc(a:int,b:int)
def myfunc(a:int,b:int,c:int)
450:ハノン
22/10/24 06:55:32.96 +/V2/OmRH.net
>>443
gcc はカバのダンスの調教に疲れて c++ になったかと
451:デフォルトの名無しさん
22/10/24 07:32:37.40 FaCSJwQ/0.net
ラズパイを動かすための言語って思ってる人もいるかもしれない
452:デフォルトの名無しさん
22/10/24 07:46:28.41 LLDppSf/0.net
>>443
それはそう言う例があるってだけの話
テキストを読んでバイナリを出力できる言語なら(面倒かどうかは別にして)コンパイラを作れるだろ
453:デフォルトの名無しさん
22/10/24 08:02:02.76 m3/1dAn60.net
>>447
例ってなんだよw
454:デフォルトの名無しさん
22/10/24 08:45:07.46 ps8GOOL70.net
はじめにCありき
455:デフォルトの名無しさん
22/10/24 08:48:17.61 LLDppSf/0.net
>>448
念の為に聞いておくけどC言語はC/C+でないと作れないとか思ってないよね?
456:デフォルトの名無しさん
22/10/24 12:57:00.37 m3/1dAn60.net
>>450
何を言ってるんだ?
支離滅裂だぞ
Cコンパイラの作り方を知りたいのか?
字句解析、構文解析、意味解析、コード生成、最適化とかを知りたいのか?
コンパイラの教科書でも読めば?
ちな俺は大学でその辺やってたから教えても良いよ
457:デフォルトの名無しさん
22/10/24 13:06:44.24 m3/1dAn60.net
Cコンパイラ作りたいなら湯淺太一先生のコンパイラの教科書読みな
この本は昔大学で使っててアセンブリ言語のコード生成までちゃんと書いてある
著者はLisp処理系とか作ってた人
この本読めばRustがどういうコード生成してるかもわかる
458:デフォルトの名無しさん
22/10/24 13:14:19.77 LLDppSf/0.net
>>451-452
御託はいいから>>450にyes/noで答えろよ
459:デフォルトの名無しさん
22/10/24 13:15:55.81 rCA25jH/a.net
>>453
なんでCでしか作れないんだよw
おちょくるのもいい加減にしろ
460:デフォルトの名無しさん
22/10/24 13:17:22.92 rCA25jH/a.net
というかマジでわかってない?
コンパイラとリンカとか知らんのかな
それなら謝るけど
461:デフォルトの名無しさん
22/10/24 13:17:23.04 oX2BqG4d0.net
どーでもいいw
すれち
462:デフォルトの名無しさん
22/10/24 13:19:20.96 rCA25jH/a.net
あまりに前提知識が無さすぎるが故に煽りっぽくなってしまったのなら俺の責任だからそこは謝るよ
463:デフォルトの名無しさん
22/10/24 13:21:10.71 rCA25jH/a.net
どうでもよくないよ
コンパイラのこと知らずにRust書いてるならかなり怖い
464:デフォルトの名無しさん
22/10/24 13:23:06.14 oX2BqG4d0.net
PythonのスレでRust書いてる前提で話すほうが怖いわw
465:デフォルトの名無しさん
22/10/24 13:35:13.05 rCA25jH/a.net
>>459
ん?あ、すまんw
リアルに勘違いしてたw
アスペ出たなあ
466:デフォルトの名無しさん
22/10/24 13:35:23.26 8nSTkhtC0.net
ほとんどのスレが閑古鳥だからかスレチでも書きたい欲求が上回るんだろうね
467:デフォルトの名無しさん
22/10/24 13:40:32.83 rCA25jH/a.net
ただpythonでC/C++拡張を書く場合には普通に有効だし
知っていて損はないと思うけどね
スレ違いスマソ
468:デフォルトの名無しさん
22/10/24 13:45:13.84 LLDppSf/0.net
>>454
お前には聞いてないからいちいち絡んでくるなよ...