Pythonのお勉強 Part55
■ このスレッドは過去ログ倉庫に格納されています
>>523 用途がよくわからないのだけど 優れた疑似乱数がほしければメルセンヌツイスターとか使ったほうがよいよ。 素数もファイルから読めばいいよね RSAとかwebAPI持ってる? >>523 import math digits = input("少数第何位まで要る?") print(str("円周率: {0:." + digits + "f}").format(math.pi) l = [("A", A), ("B", B), ("C", C), ("D", D)] print ("一番小さいのは", min(l), "です。") これで最初は一番小さいのがDだとしたらDがプリントされるんですが、ループ中にABCD関数それぞれの数値が書き換わった場合でもずっとDがプリントされます。 print(A) print(B) print(C) print(D) としていても変動はしています。 min内が変わらないので、原因をおしえてください。 小数点があるからでしょうか? >>528 >円周率の小数点以下任意のN桁目の数字の求め方(超高速に求めるアルゴリズム) そんなものはない すみません。見当違いの書き方でした修正してためしてみます。 >515 この順でやってみ import time a = time.time() list02=[] for x in range(1000): □list02.append(x ** 2) b = time.time() c = b-a print(c) a = time.time() list01=[x ** 2 for x in range(1000)] b = time.time() c = b-a print(c) >>535 おぉ、コード実行の順番も影響するんっすね! ありがとう >>536 まずはアルゴリズムとデータ構造みたいなタイトルを一通り読め abc=[[0,0,0],[1,0,1],[0,1,0]] こんな感じの配列がある場合、 0を□に、1を●に置き換えたい場合はどうすれば良いのでしょうか? どなたか良い方法を教えて下さい。 オセロやマルバツゲームを作りたいと考えてます。。。 board = [['□●'[cell] for cell in row] for row in abc] >>541 ありがとうございます!! できました〜 >>541 このコードはどういった仕組みで動いてるんですか? 自分はifを使った方法しか思いつかなかったです。 こんな短いコードでハイテクな仕事をするなんて凄い。。。 文字列の0文字目か1文字目かを取り出している。 あと、リスト内包表記を二重に使っている >>544 ありがとうございます。 すごいですね。 内包表記を使えばこんなコードが書けるんですね。 >>539 >>> import numpy as np >>> a = np.array([[0,0,0],[1,0,1],[0,1,0]]) >>> np.array([list(map(chr, (np.dot(a, np.eye(3, 3, dtype=int) * 46) + 9633).reshape(1, 9)[0]))]).reshape(3, 3) array([['□', '□', '□'], ['●', '□', '●'], ['□', '●', '□']], dtype='<U1') >>546 ありがとうございます。 numpyを使う方法もあるんですね!! すみません。 .pyファイルを自動再起動するバッチをつくりたいのですが、dos で実行させると書くと cmd自体を終了させることになり 間抜けなことになりました。 dosから anaconda prompt などを起動してそこに.pyを自動実行させるほうほうはありませんか? >>550 有無を尋ねているのであって、やり方を尋ねているんじゃないからな すみません。VB理解できず EXE化したpyをdos上で再起動ループさせて何とかなりました。 テストはしてない。 import subprocess subprocess.run(('/sbin/shutdown', '-h', '1')) python3使って三つの数の最大公約数ってどうやればいいんだ? 二つの数の最大公約数求めてからあと一つのとの最大公約数求めようと思ったんだがイマイチわからん gcd(a, gcd(b, c)) で良いのでは? 車輪の再発明前提で 速度気にしないならすべて素因数分解して共通因子の積 速度気にするなら互除法だが三つ巴の時のやり方をググれ 公約数をcollections.Counterに全てぶち込んで3個の奴を降順ソートした0番目の要素が最大公約数 小学5年生に対して、それは投げやり過ぎる。 公倍数を求める(仕組み) http://www.sho6.info/archives/362 ユークリッドの互除法(解説) https://p--q.blogspot.jp/2014/05/python9.html 公式ドキュメント https://docs.python.jp/3/library/functools.html import functools import math print( functools.reduce(math.gcd,[220,240,360]) ) VSCodeでPythonをやってる人がいたら操作を教えてほしんだけどさあ 「import numpy as np」みたいに入力してエンターキーを押した際、numpy等の余計な名前が補完されて「import numpy as numpy」みたいになっちゃうのってどう防いでるの? そもそもnpから始まっているわけでもない名前を補完してくるって大した機能だけど、これ不便でないかい・・・・ なんでrangeの第2引数は1大きいクソ仕様なの?教えてエロい人 def test(*a): ....print(sum(a)) b=[7,6,8,5] test(b) すいません。 可変長引数?なるものを試してみたのですが 何度やってもエラーがでます。 どなたか解決策を教えてください。 test(7, 6, 8, 5) あるいは test(*b) と使うのでは 素早いありがとうございます。 変数の前にも*が必要だったのですね!! 助かりました。 素早いありがとう。。。 素早い回答でした。 すいません。 ありがとうございました。 tkinter でボタンつくってそれをおしたら、クリップボード内にgetで取得した文字列をわたしたいのですが、簡単なコードで書ける方法があるならおしえてほしいです pandas.DataFrame([get()]).to_clipboard() pythonでちょっとしたアプリを作って,それを非python環境でも動かすことは可能ですか? pyinstallerというのがそれっぽく見えるのですが... 結局,動かすパソコンにpythonと必要なパッケージを入れておかないと動かないのでしょうか? ここでレス待つより pyinstallerを激しく調べたり・試してみれば良いんじゃないのか その方が早く結論でると思う >>579 ざーっと調べてみて,pyinstallerでイケるような気がしてきました 問題は望みのguiを作れるかですね... >>580 いけるよ。 wxPythonで作ったツールをpyInstallerでexe化して使ってもらってる。 もちろん、使う側にはPython環境入ってない。 >>581 遅くにありがとう mac用に.appでも出力できるんですよね? みなさんありがとうございます https://qiita.com/gollowars/items/387d5fecd29c26cace99 この記事を見て,qtとpyinstallerでmac用アプリにも出力できるのかあと思ったのですが大丈夫ですよね? 周りにlinuxユーザーがいないので,macとwindowsで動けば充分です とりあえずwin10 64bitで、py 3.6.1とpyinstaller3.3ならなんの問題もなくexe化可能。 win上でmac向けを直接作るのは無理。 環境一式を固めるだけなので、mac用を作りたければ、mac上のpy環境が必要。 …だと思う。 yamlが非常に便利でよく使いっているのだけど, 標準ライブラリじゃないんだよね. 同じような事を標準ライブラリでやりたい場合 なんかいい方法ありますか? 例えば dl = [{'1':1}, {'2':2}] みたいな変数を サクっとファイルに読み書きできるような機能ってありますか? >>590 今まさに,これを調べてた! これでいいんですね!ありがとう! >>587 ID変わります 僕はmacユーザーなのでその点は大丈夫そうです 必要なパッケージも分かったのでだらだら実践に移ろうと思います ありがとうございました PyQtでラベルをうごかしたりアニメーションさせたりってできますの? pandasでExcelのVLOOKUPみたいな事をしたいのですが どうやったらできますか。 aaa={2,6,9}というリストに、 fff()関数に渡して、77を加えたいのですが、 エラーが出ます。どうすればいい? AttributeError: 'set' object has no attribute 'append' aaa={2,6,9} def fff(bbb): bbb.append(77) print(bbb) fff(aaa) global aaa加えてもダメ。 aaa={2,6,9} def fff(bbb): global aaa bbb.append(77) print(bbb) fff(aaa) >aaa={2,6,9}というリストに { } は、set・集合だろ >AttributeError: 'set' object has no attribute 'append' だから、setには、append が無い リストは、[2, 6, 9] コ−ド打ち間違いでした。 リスト[2, 6, 9]だと、出来ますか? 今、通勤中で、パソコンがないので。。。 aaa = [2,6,9] def fff(bbb): bbb.append(77) print(bbb) fff(aaa) これでできた これは、出来る? グローバルなリストを、 関数内で、添え字で代入だけど。 今、パソコンがない環境なのです。。。 aaa = [2,6,9] def fff(bbb): bbb [1] = 77 print(bbb) fff(aaa) >>608 下請けじゃないから試してないけど、多分できない。 関数内でglobalしとけば可能なはず。 Pythonで物理乱数を発生させたいと考えてます。 できるだけお金を掛けずに簡単にやる方法ってありませんか。 当方、プログラミングは最近始めたばかりの初心者です。 よろしくお願いします。 私が考えてるのはマイクなどで音を拾って音の周波数から乱数を発生。。。 難しいですかね?どなたかやり方教えてください。 611、612さん、thx! 出来ました! パソコン持って来てないけど、 分かりました(^-^) >>613 /dev/randomのソースを読む アホは普通の人より多く金を払わなければ存在を認められないんだよ それが嫌ならアホを脱出しろ >>616 ですよね。。。 スキルのない奴が人をアホ呼ばわりとか。。。 どなたかDAISOで揃うもので物理乱数を発生させる方法をお願いします。m(_ _)m サイコロとかはなしでお願いします。 自動的に乱数を発生させたいのです。 ID:TdwKXjoL ID:29y3RqyU ID:EhnDmFZw ID:oiJ7/Utq 普通はrdrandとか使うんじゃないか まさにrdrandっていうモジュールがPyPIにあるから それ使えばいいだろ 単位時間の音声データのハッシュを計算する。 素人だから本当にこれで良いのか知らないけど。 ググったら/dev/randomもハードウェア乱数生成器ぽい >>621 それってどういう仕組なんですか。 結局、CPUの擬似乱数を取得してるのと違うんでしょうか? >>622 それ、しかないんですかね。。。 やり方キボンですw >>624 rdrandも>>622 みたいな感じで生成してるっぽい >>625 そうなんですか!! 使ってみます。。 ありがとん。 >>624 https://news.mynavi.jp/article/20110921-ivy_bridge/ Ivy Bridgeのrdrandの仕組みはここに簡単に書いてあるが ただ電気回路の知識がないと理解できなさそう ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.1 2024/04/28 Walang Kapalit ★ | Donguri System Team 5ちゃんねる