Pythonのお勉強 Part55
■ このスレッドは過去ログ倉庫に格納されています
>>478 pack()メソッドを使うときsideオプションを指定するといいと思う label.pack(side="left")って感じに記述すると 左から順番に詰め込んでいく。 sideを何も指定しないと"top"がデフォルト値になってるから縦に並んでいく。 ちなみにpython3で試した python2だと記述法がちょっと違うかもしれないけど ありがとうございます。 Python2なのですが、ググってpack()メソッドsideオプションの記述方法を探してみます。 よかったら参考になるリンクご紹介いただけたら嬉しいのですが... Pythonプログラミングって面白いですね! >>480 自分はpython2にはあまり詳しくないから記述法が違うかもしれないっていっちゃったけど python2でも>>479 の書き方で普通にいけそうだった http://www.geocities.jp/m_hiroi/light/pytk01.html 一応書いておくと「Tkinter」という風にTが大文字になっているとpython2で 「tkinter」という風にtが小文字になっているとpython3って感じで見分けられるよ あざっす どうもpackのsideオプションだと [ラベル][エントリー]の2つのセンター配置とかできなさそうですね。 他方法を探してみます。本当にありがとうございます^ ^ pythonは遅い。ライブラリーが追いついてきたらJuliaに取ってかわられる。 >>484 5年前からそう言われてるのでそろそろ敗北知りたすぎて転げ回る頃 まだ? >>484 Juliaに取ってかわられたなら、Julia移るだけだろ pythonがそれなりに"出来る奴"ならJuliaも使えるようになるだろし 言語より使う奴の能力の方が重要だからな Pythonでも速度要るならその部分は速度の出るC/C++でやって それをPythonから使うとかしているだろう(C/C++が出来ると) 音声ファイルを読み込んで、0.01マイクロ秒隔離で周波数を求めテキストファイルに書き込む方法 どなたかご存知有りませんか? グラフまでは、できたのですが、数値の取り出し方が分かりません。 from pydub import AudioSegment import matplotlib.pyplot as plt mp3_version = AudioSegment.from_mp3("sound.mp3") sound = AudioSegment.from_file("sound.mp3", "mp3") samples = sound.get_array_of_samples() plt.plot(samples) plt.show() >>492 それ0.01マイクロ秒隔離で周波数を求めてグラフ出力しているのか? なんか、そんな感じには見えないが(mp3を読み込んでそれをデコードしたデータ(samples)をプロットしているだけな気がするが) >>492 samples の中身が数値の入ったタダの配列で、len(samples) で長さもわかる そもそも0.001μsって100Ms/secなんだがそんな分解能が必要な「音声ファイル」なんてあるのか? スペクトログラムの奴だろ ただのキチガイだから無視しろ キチガイってあのプレゼントバカのことか あれは笑えたから許してやれよ これは失礼 質問の仕方が悪かったですね。 無能な皆さんのおかげで無事に解決しました。 http://fast-uploader.com/file/7072506321918/ 本当にありがとうございました。 >>497 5chのpythonスレに来る俺らは大なり小なり精神障害,知的障害ある奴(病気持ち)が大多数だろ。 軽度なら俺みたいに会社に行って低脳と言われながらでも仕事しているだろうが、 でも、会社・学校が受け入れられないレベルの障碍者は平日の昼からスレで時間つぶししている感じだろ。 つまんない質問飛ばして、「詰まんね」とか言われて「はぁ?」と 返す。2ch時代からの伝統が好きです。 完全な素因数分解の公式が分からないんだけど? ggっても出て来ないし、誰か知らない? [1, []] [2, [2]] [3, [3]] [4, [2, 2]] [5, [5]] [6, [2, 3]] [7, [7]] [8, [2, 2, 2]] [9, [3, 3]] [10, [2, 5]] [11, [11]] [12, [2, 2, 3]] [13, [13]] [14, [2, 7]] [15, [3, 5]] ''' ''' etc >>508 単に素数で割り切れるかどうかを試していけばいいだけじゃね? 公式が分ないてのはPythonではなく数学の話だろ 数学スレきいたほうが良いよな prime factorization algorithm とか integer decomposition algorithm で検索すれば、いくらでも出てくるよ。 pythonのコードが欲しいなら、rossetta code で探したらいい。 https://rosettacode.org/wiki/Prime_decomposition#Python 確かに公式は数学スレだった。すまん。 コードが欲しい訳じゃあ無いよ。 import time a = time.time() list01=[x ** 2 for x in range(1000)] b = time.time() c = b-a print(c) a = time.time() list02=[] for x in range(1000): □list02.append(x ** 2) b = time.time() c = b-a print(c) □はインデントっす。 最近、内包表記というものを学んだド素人っす。 内包表記は高速ですごいと聞きましたが、逆にtimeで速度を測ると逆に遅くなりました。。。 誰か助けてください。。。 >>515 そのコードでは冪乗のコストが大きすぎて誤差レベル append引っ張ってコール相当を内部的にやる分は速い ループ外でappend = list02.appendすると差は縮まる >>516 ありがとうっす。 冪乗を消して単純にxをlistに追加するだけにして ループ回数を増やして見たら差が明確になりました。 そういうもんなんですね。 そもそもうちのしょぼ環境ですら>>515 だと差がつかない range(1000000)にしたら差が出るけど内包のほうが微妙に速いよ celeron 1005M (1.9GHz) >>518 環境の影響もうけるもんなんすね! よほどループ回数が増えない限りそこまで内包表記に拘る必要もなさそうっすね。。。 ありがとうです。勉強になります。 変数の変化によってwxPythonのボタンを無効化したいのだが if xx = true button.Disable() では変化しないので、他に手段が無いか分かるひといない? 円周率の小数点以下任意のN桁目の数字を出力するpythonコードを知りたいです >>523 円周率をダウンロードしてそのファイルから読み取る >>508 あるわけないだろ。 そんなことも知らないとは… >>523 は 円周率の小数点以下任意のN桁目の数字の求め方(超高速に求めるアルゴリズム)はわかるが でも、pythonの知識不足でコードに出来ないってことだろうな。 数学好きでpython上級者の遊園地がどやでコード教えてくれるだろ >>525 超高速に求めるアルゴリズムが分からない奴には良いやり方だな >>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を激しく調べたり・試してみれば良いんじゃないのか その方が早く結論でると思う ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.4 2024/05/19 Walang Kapalit ★ | Donguri System Team 5ちゃんねる