[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 09/02 05:08 / Filesize : 295 KB / Number-of Response : 1041
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました



1 名前:デフォルトの名無しさん mailto:sage [2020/07/18(土) 16:33:27.37 ID:/iWSRGfH.net]
当スレに★Python以外のプログラミング言語での回答類を書くべからず★
「Ruby では」「Rubyでは」「某言語では」をNGワード登録推奨

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

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

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



412 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 02:26:01 ID:2RyFB+EQ.net]
>>389>>396
とにかく 是が非でも a=1 にしたいんだろ
そこを通過してくれないと困るんだろ

413 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 02:36:08.51 .net]
n = f1(True)を n = f1(False)にすればa=0になるし
if True: を if False:にしてもいいし
文脈みればどうでもいい部分だからif Trueにしてるってことくらいわかるでしょ
a=1だけでいいとかはまったくの的外れ

414 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 02:39:15.35 .net]
コード”のみ”をみれば結果がa=1だからそれを最適化すればいい
とか普通にネタで言ってるんだと思って流してたけど違うのか??
そんなこと言い出したら全角の_でインデント使ってるとこも
エラー出るぞとか言って徹底すればいいのに

415 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 02:41:39.28 .net]
ガチのマジでアスペいない?
あざといからネタでやってるんだと思ってるんだけどなぁ

416 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 02:45:26.49 ID:2RyFB+EQ.net]
初めから知識0からじゃ何も進まないじゃないか
ともかく前提条件が >>1以外の事は考えたくないんだ

417 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 06:22:3 ]
[ここ壊れてます]

418 名前:2 ID:LSc+X1IL.net mailto: ↓のような標準入力が大量にあったとして、それをリストに入れたい状況で、
リストを順に命名する方法はありますか?
list_001 list_002 list_003 list_004 list_m の様に増えていくイメージです。

for i in range (m): のような形の処理しか思いつかないのですが、
リストを何らかの順番で規則的に命名する方法がわかりません。
よろしくおねがいします。

--------------------------
123 4 56 789 0123 45 67 8901 .....n list_001
as efef asef fe3 434 ee fea ...n list_002
aseff ae asd ...n list_m
[]
[ここ壊れてます]

419 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 08:08:10 ID:XsPNeg0Z.net]
>>403
temp_dic={}
forループの中で
temp_list=[]
リストの中身いれてさいごに
hoge="list_"+str(i)#桁揃えのやり方あるけどなんだったかわすれたわ
temp_dic[hoge]=temp_list

でもってさいごのさいごに
またforループでdicから順々に取り出せばえんでねーのかな

420 名前:デフォルトの名無しさん [2020/08/05(水) 08:51:45 ID:L/0IIDMF.net]
> お前は毎朝起きるたびに俺に負けたことを思い出すよ^^

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

クソチョンw

Pythonさえろくにできないバカチョンのくせに
できるとほざくクソチョンw

日本で強姦と窃盗を繰り返す
犯罪者在日のクソチョンw



421 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 09:11:58 ID:+q2ZzHFA.net]
>>405
放射能まみれのチョッパリが何をイキガッているんだ?
強姦と窃盗はお前らチョッパリのお得意分野だろう!
慰安婦の方々に謝罪し、徴用工の方々にきちんと賠償しろ

俺たちに口応えするのはそれからだ!

422 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 09:20:36 ID:nWrq5ml2.net]
>>401
ガチ

423 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 10:10:28.99 ID:zJw940E0.net]
>>395
ありがとうございます。
これだと
clicked() takes 0 positional arguments but 1 was given
となりました。引数無いぞコラというエラーですよね。

def clicked(a):
print('click')

button1.bind('<button-1>', clicked)

だとOK。

424 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 10:19:51 ID:zJw940E0.net]
button1.bind('<button-1>', clicked)
って左クリックをしたらclikedを実行ではなくて、

425 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 10:20:59 ID:zJw940E0.net]
左クリックをすると
イベント値をclickedにわたすということでしょうか?
クリックをしたら関数を実行みたいにしたいのですがbindを使うのが間違ってる?

426 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 10:28:09.96 ID:LSc+X1IL.net]
>>404
ありがとうございます。
なんとかなりそうです。

427 名前:デフォルトの名無しさん [2020/08/05(水) 10:44:01 ID:xKYyZvTf.net]
>>403
execをつかう

要するに、「python 変数 動的 生成」と検索すると答えは出る

Python - pythonでname0,name1,name2・・・のように変数を宣言したい|teratail
https://teratail.com/questions/9130

pythonで動的に変数を定義する - Qiita
https://qiita.com/ytsumura/items/917de811c023ee9f3709

pythonの教科書でevalが全然説明されてないのも問題だ
こういう便利なヤツはバンバン使えばいいのに
そもそもevalとapplyは最重要項目でしょう

428 名前:デフォルトの名無しさん [2020/08/05(水) 11:07:48 ID:G2EhtAf5.net]
そもそもlist/dictに勝る点がないので、便利でも何でもない。
デバッグのし辛さとか変なコードの実行などなど。
execなんかよりストレートにglobals/locals使う方法もあるが、
globals()["hoge"] = "Hoge"
print(hoge)
これもexecと同様デバッグがめんどくさくなる。

429 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 11:21:08.66 ID:zJw940E0.net]
>>410
すいません自己解決しました。
button1 = tk.Button(

430 名前:root1, text='1データを分析', font=20,command = clicked)
でOKでした。
[]
[ここ壊れてます]



431 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 11:38:46.21 ID:zJw940E0.net]
ずっとanacondaからvscodeでpythonいじってたんですが、
プログラムの規模が大きくなってきたため、統合開発環境をインストールして開発しようかと思っています。
無料の統合開発環境でいいのってないですか?

432 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 11:38:47.88 ID:LSc+X1IL.net]
2次元配列のリストと辞書(一次元)は同じ様に思えるのですが、違いはありますか?
(3.7以前、辞書が順序を保存しなかったときは大きな違いがあったと理解しています。)

それぞれの仕組みが書いてあるサイトはあるのですが、何が違うのかを調べても見つけることが出来ませんでした。

書くのが面倒であれば、説明が書いてあるサイトを貼っていただく形でもありがたいです。

>>412
ありがとうございます。試してみます。

433 名前:デフォルトの名無しさん [2020/08/05(水) 11:39:01.66 ID:kVNaCqIg.net]
File "C:\Users\NEC-PCuser\.spyder-py3\temp.py", line 23, in <module>
my_data = genfromtxt('SingleECG.csv')

File "C:\Users\NEC-PCuser\anaconda3\lib\site-packages\numpy\lib\npyio.py", line 1772, in genfromtxt
fid = np.lib._datasource.open(fname, 'rt', encoding=encoding)

File "C:\Users\NEC-PCuser\anaconda3\lib\site-packages\numpy\lib\_datasource.py", line 269, in open
return ds.open(path, mode, encoding=encoding, newline=newline)

File "C:\Users\NEC-PCuser\anaconda3\lib\site-packages\numpy\lib\_datasource.py", line 623, in open
raise IOError("%s not found." % path)
グラフをプロットしたらこのようなエラーが出ました。解決方法を教えてください

434 名前:デフォルトの名無しさん [2020/08/05(水) 12:04:12 ID:aMNOBbmO.net]
>>416
https://docs.python.org/ja/3/library/stdtypes.html#list
https://docs.python.org/ja/3/library/stdtypes.html#mapping-types-dict
これ見ても何が違うかわからないの?

435 名前:デフォルトの名無しさん [2020/08/05(水) 12:44:19.03 ID:L/0IIDMF.net]
> お前は毎朝起きるたびに俺に負けたことを思い出すよ^^

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

クソチョンw

Pythonさえろくにできないバカチョンのくせに
できるとほざくクソチョンw

日本で強姦と窃盗を繰り返す
犯罪者在日のクソチョンw

436 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 12:59:40.04 ID:bfUj5q3R.net]
今どきWindowsに直でPython入れてる馬鹿はくたばっとけよ

437 名前:デフォルトの名無しさん [2020/08/05(水) 13:08:50.41 ID:IZQzbQjk.net]
>>417
1.Spyderを1回でも起動するとホームフォルダに「.spyder-py3」というフォルダができています。
Windowsの方は、ご自分のデフォルトのホームフォルダに「.spyder-py3」ができていることがわかります。
OSXの方は、ホームフォルダ直下に、不可視フォルダとして存在しています(見えません)。Finderの「移動」メニュー→「フォルダへ移動」をクリックして、「フォルダの場所を入力」に「.spyder-py3」と入力し、Returnキーを入力します。
2.このフォルダの中に、「spyder.lock」というファイルを探してください。このロックファイルは通常Spyderの起動時に自動的に作成され、終了時に自動的に消去されます。ところが、何らかの理由でこれが残ってしまった場合、spyderを新たに起動できなくなります。
3.spyder.lockをゴミ箱に入れて削除します。
4.再びspyderの起動をおこなってください。

438 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 13:21:10.89 ID:LSc+X1IL.net]
>>416
自己解決
これを読んで理解しました。
https://www.quora.com/Should-I-use-a-2D-list-or-dictionary-to-store-a-tabular-form-of-data-in-Python-and-why

439 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 13:40:48 ID:XsPNeg0Z.net]
>>417
  >>1をよめ まもれ
はなしはそれからだ

440 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 13:51:58 ID:xp5DSzK/.net]
>>403
n行目のリストにlists[n]でアクセスできれば十分だと思うんだけど
どうしてそれぞれの行にわざわざ変数名を付けたいの?



441 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 14:20:17.00 ID:LSc+X1IL.net]
>>424
webからpytonで取得したデータをcsvかxmlで出力して、
他のデータと合わせて処理したいというのが今の狙いです。
今の所excelで最終的に処理しようと思っていますが、もう少し勉強しないとそのアプローチが正しいのかもわからないです。

プログラム自体完全初心者で、初めて1週間程度なので分かっていない部分が非常に多いことは自覚してます。
pandaとかnumpyとか色々あるようですが、その辺りが理解できれば別のアプローチを考えるかもしれません。

442 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 14:23:23.58 ID:LSc+X1IL.net]
質問にキチンと答えられていなかったので補足すると、
csvで出力した場合に他のデータとマージしたりする時に、
各行ごとに順番で名前がついていれば処理しやすいと思った、というのが理由です。

根本的な発想が間違っている可能性もありますが、その点は申し訳ないです。

443 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 14:31:36.03 ID:YFT9R2Ox.net]
単純に順番でなのであれば、>>424が言う様に2次元配列でいいと思う
>>> list=[["a","b","c"],[0,1,2],["あ","い","う"]]
>>> list[0]
['a', 'b', 'c']
>>> list[1][1]
1

444 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 14:38:49 ID:pA7ncT8x.net]
>>426
変数名そのものを変数で定義したり外部に出すのはとてもむずかしい
(できなくはないが普通はやらないので特別な方法をとる必要がある)
dictを使うのが正解で
それならitems()で変数名と中身の両方にアクセスできる

445 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 14:52:44.05 ID:pA7ncT8x.net]
変数名っていうかキーね
まぁ普通はそういう変数を変数で命名するのはpython以外の言語でもしない

446 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 14:55:15.13 ID:LSc+X1IL.net]
皆様、色々教えて頂きありがとうございます。

>まぁ普通はそういう変数を変数で命名するのはpython以外の言語でもしない

なるほど。
それでも世の中うまく回ってるってことは、私みたいなアプローチをする必要がないんでしょうね。
辞書とか多次元リストを試してみます。ありがとうございました。

447 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 14:56:47.32 ID:xp5DSzK/.net]
>>425
それで、それぞれの行に変数名を付けたい/付けたほうがよさそうと思った理由は?

448 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 14:57:31.62 ID:xp5DSzK/.net]
>>431
あーごめん、入れ違いになったみたい

449 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 15:06:59.98 ID:Zf7jxWAJ.net]
すいません、自己解決しました

450 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 15:10:18.46 ID:xp5DSzK/.net]
>>426
そういう理由であれば変数名じゃなく値として行番号を持つデータ構造を選ぶか
csvに出力するときにlists[n]のインデックス値を行番号として出力するようにすればいい

変数名は入れ物の名前で
基本的にプログラムに固定値として書く(ハードコーディングする)ものなので
動的に変わるような値は変数名にはしない
(メタプログラミングとかやや特殊な使い方をしたい場合は除いて)



451 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 15:32:35.53 ID:YFT9R2Ox.net]
しかし初めて1週間にしてはやろうとしてることがハイレベルだな。
才能あるんじゃない?

452 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 16:17:41.42 ID:zJw940E0.net]
conda activate "C:\Users\takashi ishida\Anaconda3"
conda : 用語 'conda' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識
されません。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから
、再試行してください。

453 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 16:19:36 ID:zJw940E0.net]
>>436
すいません。途中で送信しました。

anacondaのvscodeで開発したプログラムを他で実行しようとするとこういうエラーがでます。
condaコマンドって使った覚えがないのですが・・・。

454 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 18:52:45 ID:WY90OE83.net]
>>437
同じディレクトリに.vscodeってあって、それまでコピーしてきてないか?

455 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 19:32:40.11 ID:LSc+X1IL.net]
>>435
才能があるとは思わないですが、面白さにハマって一気に勉強してます。
あと10年早くプログラミング開始してれば絶対にエンジニアに転職してたと思います。
キチンと使えるようになれば相当色んなことが出来ますね。
暇つぶしにゲームとかやってないでpythonやってりゃ良かった・・・

456 名前:デフォルトの名無しさん [2020/08/05(水) 19:47:32.85 ID:v2dPmWiH.net]
>>392
既に米付いてるけどもうひとつ
Button1.bind("<button1-1>", lambda : print('click'))

457 名前:デフォルトの名無しさん mailto:sage [2020/08/05(水) 20:17:47 ID:XsPNeg0Z.net]
>>436-437
「他」とやらに
.pyだけもってきていて
anaconda入ってないとかいうオチじゃねーの?

>>439
オラも
暇つぶしにプログラミングなんてしてないで
ボカロの調教か3Dモデリングしてればよかったとか
そも建築学科いってればとか
いろいろ思うだーよ

458 名前:デフォルトの名無しさん [2020/08/06(木) 12:59:02.85 ID:VbLHuZhq.net]
> お前は毎朝起きるたびに俺に負けたことを思い出すよ^^

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

クソチョンw

Pythonさえろくにできないバカチョンのくせに
できるとほざくクソチョンw

日本で強姦と窃盗を繰り返す
犯罪者在日のクソチョンw

459 名前:デフォルトの名無しさん mailto:sage [2020/08/06(木) 19:46:10 ID:9CykuhS+.net]
文字列を整形するスクリプトをいくつか使っているんですが
手軽に使いたいので整形前の文字列をinputで入力するようにしています
でも文字数に制限があるらしく長い文字列だとエラーになってしまいます
やっぱり横着しないでファイルから読まないとダメですか?

460 名前:デフォルトの名無しさん mailto:sage [2020/08/06(木) 19:50:18 ID:7L1cCHwV.net]
>>443
限界数の文字列をまず受け取る
しかるのち
とった分をhogeみたいなのに代入しておいて
続きを入れろと促すメッセージを出し、
受け取ったらhogeに足す。
(以下略)

途中で打ち間違えたら困るので、普通にファイルから受け取るほうがいいぞ



461 名前:デフォルトの名無しさん mailto:sage [2020/08/06(木) 19:52:43.52 ID:9CykuhS+.net]
>>444
なるほど!と一瞬思ったけど
文字列が限界突破してるかどうかの判断はどうやるんでしょう?

462 名前:デフォルトの名無しさん mailto:sage [2020/08/06(木) 22:12:23.79 ID:bT9J+NNY.net]
>>445
input関数の上限はたしか1024文字
ためしに1025文字打ってみ

463 名前:デフォルトの名無しさん mailto:sage [2020/08/06(木) 22:33:44.38 ID:u+7LtLeC.net]
input使うほうがめんどくね?

for line in sys.stdin:
print(line)

data = sys.stdin.readlines()

data = sys.stdin.read()

464 名前:デフォルトの名無しさん mailto:sage [2020/08/06(木) 22:40:15.88 ID:9CykuhS+.net]
俺氏のレベルが低すぎてわからなかったが
限界のちょい前で区切れば良いのか
これはちょっと時間があったらやってみようと思う
ありがとう

>>447
個人的にはスクリプトをダブルクリックしてプロンプトに右クリック→エンターが楽だな
テキストファイルを編集するのが地味に面倒い

465 名前:デフォルトの名無しさん mailto:sage [2020/08/07(金) 02:47:23.95 ID:FY0CqvZ3.net]
面倒くさいからクリップボードにコピーしたあと
pyperclipでクリップボードを読み込んでそのまま処理させてる

466 名前:デフォルトの名無しさん mailto:sage [2020/08/07(金) 07:29:33.01 ID:mKqTfwbZ.net]
>>449
横レスだが
なるほどー

467 名前:デフォルトの名無しさん mailto:sage [2020/08/07(金) 08:41:20 ID:ts5R835r.net]
ある意味かしこいなww

468 名前:デフォルトの名無しさん mailto:sage [2020/08/07(金) 10:05:23.22 ID:5Voyvt5w.net]
というかpythonってjavascriptで言うところのtextareaみたいなのないの?
だったらブラウザのdriver使って入力するとか
そもそもtextエディタのdriverがあったりして

469 名前:デフォルトの名無しさん mailto:sage [2020/08/07(金) 10:38:21 ID:I/keIxIH.net]
>>452
そんな事がしたい奴はJupyterを使う

470 名前:デフォルトの名無しさん [2020/08/07(金) 11:12:59.46 ID:a/GqHoW6.net]
>>452
textareaはHTMLだろう
ブラウザのdriverってなんだよ?
そもそもtextエディタのdriverとか
ちょと何言ってるかわかんない



471 名前:デフォルトの名無しさん mailto:sage [2020/08/07(金) 13:55:42.48 .net]
>>453
そうなの?
数値とかデータだけ収集したいならそれでいいけど
文字列を整形するってなると、どこかのサイトからコピペみたいな用途もあるかな、と

>>454
たしかに、htmlタグだった
chromeドライバーとか、使い方の変数もdriverってなってるしdriverって言っていいかなって。
driver.get("index.html")みたいにして、テキストエリアに挿入
pythonで受け取って処理、みたいなことができると思った
というか既存ウェブサービスであれこれしたいときは普通に使ってるし

472 名前:デフォルトの名無しさん mailto:sage [2020/08/07(金) 18:26:19.71 ID:KSWhJGwQ.net]
>>455 自動化のRPA Selenium のドライバーとかと混乱してない?

driver.get ってSelenium の機能じゃないの?

Python でもSelenium は使えるよ。

473 名前:デフォルトの名無しさん mailto:sage [2020/08/07(金) 19:52:25 .net]
>>456
>Selenium
うん、もちろんそうだけど。。
Seleniumでchromeドライバ読み込んで
>>443
スクリプトをダブルクリック → driver.get("自分で用意したtextarea.html")
 → テキストエリアに右クリック(文字列コピペ)
 → pythonが変更を感知して文字列を読み取る
 → 文字列成形処理(textarea.htmlで何かしらの操作をやってもいい)
 → ウィンドウclose
みたいにすれば文字数制限なしの右クリック(コピペ?)→エンター必要なしのお手軽inputの代わりになるのでは、ってこと

474 名前:デフォルトの名無しさん mailto:sage [2020/08/07(金) 20:11:00 ID:mKqTfwbZ.net]
>>457
おまえの過去レスから
なぜそこまでエスパーしろと
おれらに要求するんだwww
(・∀・)カエレ!!!

475 名前:デフォルトの名無しさん mailto:sage [2020/08/07(金) 20:44:30.96 .net]
おれとしてはそんなことよりもなんで>>447の方法じゃだめなん?というのが気になってる

476 名前:デフォルトの名無しさん [2020/08/07(金) 20:51:13.44 ID:R6EkH4Oi.net]
inputってOSとかターミナルに依存せんの?
その1024っていうのも文字数なのかバイト数なのかよくわからんし。
いままで意識したことなかったけど、意外に短かいもんだな。

477 名前:デフォルトの名無しさん mailto:sage [2020/08/07(金) 23:42:19 ID:TzYKRTqH.net]
漏れは、Ruby で、クリップボード経由で、文字列を変換している

さらに、バッチファイルに、ruby .\script.rb と書いて、
ダブルクリックで、そのプログラムを起動できるようにしている

# クリップボード内の複数行文字列の、各行の先頭・末尾から、
# 連続する空白類を除去して、クリップボードに入れる

str = `powershell Get-Clipboard`
str.encode! Encoding::UTF_8, Encoding::CP932 # UTF_8 へ変換

ary = str.each_line.map( &:strip ) # 連続する空白類を除去する

IO.popen( 'clip', 'w:cp932' ) do | clip | # CP932 へ戻す
clip.print( ary.join "\n" )
end

478 名前:デフォルトの名無しさん [2020/08/08(土) 11:27:43 ID:noFfmCPy.net]
>>452
tkinter

479 名前:デフォルトの名無しさん mailto:sage [2020/08/08(土) 15:48:54 .net]
>>462
さっそくやってみた 良いね

from tkinter import *
root = Tk()
root.geometry('240x120')
e = Entry(root, validate="key", validatecommand=(root.register(lambda p:[print(''.join(p.split())),root.quit()]), '%P'))
e.grid()
root.mainloop()

480 名前:デフォルトの名無しさん [2020/08/08(土) 16:54:46.34 ID:jNP2OM4q.net]
https://murashun.jp/blog/20200113-51.html#chapter-3
フォルダ名の一覧を取得したいのですが、ファイル一覧を取得してからフィルターをかけるしかないのでしょうか?
4行目なんですが、このcmdライクな書き方が良くわからないのです。



481 名前:デフォルトの名無しさん [2020/08/08(土) 16:57:20.42 ID:jNP2OM4q.net]
f for f とは何でしょうか?
↑牡蠣忘れました

482 名前:デフォルトの名無しさん mailto:sage [2020/08/08(土) 17:11:25.36 .net]
>>465
内包表記
[ ”条件1がTrueのとき” for f in files if "条件1" ]
else使いたいときは書き方が変わってifが前にくる・・
[ ”条件1がTrueのとき” if "条件1" else "条件1がFalseのとき" for f in files ]


files = ["a","b","c","d"]
#条件1=Trueだったとき
print( [ "条件1がTrueのとき f = "+f for f in files if True ] )
#条件1=False だったとき
print( [ "条件1がTrueのとき f = "+f if False else "条件1がFalseのとき f = "+f for f in files ] )

483 名前:デフォルトの名無しさん mailto:sage [2020/08/08(土) 19:28:37 ID:JWEyeEm5.net]
リスト内包表記までは便利だけどifに複数条件からめるとかえってややこしくなるので複数行にしてる
タプルのリストの重複チェックとかは定型文的に使ってるわ

484 名前:デフォルトの名無しさん [2020/08/08(土) 19:45:59.56 ID:jNP2OM4q.net]
改造してみます
ありがとう
リネームに使いたいです

485 名前:デフォルトの名無しさん mailto:sage [2020/08/08(土) 20:27:19.81 ID:WWf5PMr4.net]
リスト内包表記の方がfor文の処理速度が速くなるらしいけど読みづらすぎ&書きづらすぎるわ
リスト内包表記を使わずに速度を処理速度を速くする方法を作って欲しい

486 名前:デフォルトの名無しさん [2020/08/08(土) 20:34:03.26 ID:jNP2OM4q.net]
読みづらいのでやめときます

487 名前:デフォルトの名無しさん [2020/08/08(土) 21:25:03 ID:PbNRKPU5.net]
そんな主体性がないことでは困る

488 名前:デフォルトの名無しさん mailto:sage [2020/08/09(日) 02:01:57.03 .net]
見慣れの部分もあるだろうけど明らかに見難いと思う
ただ結果的に何が出力されるんだ?
という部分に着目し簡潔に書く、そのために(無駄を省いたり関数にしたりして)
工夫せざるを得ない状況を作り出すための方法としてはありかも

489 名前:デフォルトの名無しさん [2020/08/09(日) 10:54:15.87 ID:/x2pn//m.net]
組み込み関数を使うといい

490 名前:デフォルトの名無しさん mailto:sage [2020/08/09(日) 11:21:50 ID:rlvW70Ue.net]
pandasで読みん込んだテキストファイルの先頭から指定した行まで削除は出来たのですが、最後から指定した数行だけ消すやり方がよう、分かりません

行数がころころ変わるのでrangeでは消せないのです

お知恵下さい



491 名前:デフォルトの名無しさん [2020/08/09(日) 11:34:08.98 ID:/x2pn//m.net]
>>474
https://ideone.com/EtcWyl
https://docs.python.org/ja/3/library/stdtypes.html#str.rsplit

492 名前:デフォルトの名無しさん [2020/08/09(日) 12:28:45 ID:G1el0n+S.net]
globで取得したファイルのリストの最初のファイルを取得するにはどうしたらいいでしょうか?

file = glob.glob("fold/*")
for i in file:
print(file[i])
TypeError: list indices must be integers or slices, not str
こういうエラーが出ますが、fileはリストではないのですか?

493 名前:デフォルトの名無しさん [2020/08/09(日) 12:31:25.41 ID:G1el0n+S.net]
file = ["one","two","three"]
for i in len(file):
print(file[i])

テスト用に作ってみましたが、これだとnot iterableになります
iが繰り返しに使えないとはどういうことでしょうか
インデックスは繰り返せるはずですが、、、

494 名前:デフォルトの名無しさん mailto:sage [2020/08/09(日) 12:33:47.83 ID:lPdKuM8h.net]
>>476
fileはリストだけど
iは?

エラーメッセージ読めよ

495 名前:デフォルトの名無しさん mailto:sage [2020/08/09(日) 12:39:36.94 ID:JXdOVZ/U.net]
>>476
リストをループすると、iにはイテレーターじゃなくて、リストの中身が入る
file = glob.glob("fold/*")
print(file)
for i in file:
print(i)
実行j結果
['fold\\aaa', 'fold\\bbb']
fold\aaa
fold\bbb

だからfile[i]にすると、文字列を使ってリストにアクセスしようとするからエラーになる

496 名前:デフォルトの名無しさん mailto:sage [2020/08/09(日) 12:46:15.61 ID:JXdOVZ/U.net]
>>477
これはPythonの記法的な問題
for i in 3みたいな書き方は出来ない
エラーメッセージでTypeError: 'int' object is not iterableって書いてある通り

file[0]、file[1]、file[2]みたいにアクセスしたい場合は>>479の書き方にするか
rangeを使う
file = ["one","two","three"]
for i in range(3):
print(file[i])

実行結果
one
two
three

497 名前:デフォルトの名無しさん mailto:sage [2020/08/09(日) 14:55:41.57 .net]
さらにenumerateも便利、同時にインデックスとれる

files = ["one","two","three"]
for i,n in enumerate(files):
_print(i,n)

>>>実行結果
0 one
1 two
2 three

498 名前:デフォルトの名無しさん [2020/08/09(日) 18:18:04 ID:G1el0n+S.net]
↑ありがとうございました
インデックスではないんですね
range(len(file))を使いますです

499 名前:デフォルトの名無しさん mailto:sage [2020/08/09(日) 18:55:14.84 ID:TCh4WBtq.net]
超初心者スレとはいえ、ちょっとこれは酷すぎるだろ
知的障害を疑うレベルだわ

500 名前:デフォルトの名無しさん [2020/08/09(日) 19:10:05.24 ID:/x2pn//m.net]
下手な教え方するより一回チュートリアルやらせたほうが、結果的には近道になるパターン



501 名前:デフォルトの名無しさん mailto:sage [2020/08/09(日) 19:18:43 ID:xLYoDobK.net]
>>469
入れ子になってたりタプルで複数の値を渡してたりしたら読みづらいときもあるけど、
慣れたら別に読み辛くないよ。
読み辛いなと思ったらforの前に改行を入れてみるとわかりやすいと思う

502 名前:デフォルトの名無しさん mailto:sage [2020/08/09(日) 19:51:17.39 .net]
.py実行したら出てくるcmdやターミナル画面ってあるけど
これをtkinterみたいなGUIウインドウの中に入れたり(そう見えてるように重ねたり)追従させたりできる?
tkinterのウインドウつまんで動かす時、一緒にターミナル画面も動いてきたらいいのにと思ったんだが

503 名前:デフォルトの名無しさん [2020/08/09(日) 21:36:20 ID:G1el0n+S.net]
pathlibをインポートするとglobはインポートしなくていいのでしょうか
モジュール同士の継承関係がわからないですが、参考ページありませんか?

504 名前:デフォルトの名無しさん [2020/08/09(日) 21:55:46.35 ID:/x2pn//m.net]
>>487
https://docs.python.org/ja/3/tutorial/index.html
一通りチュートリアルやってみてはどうですか

505 名前:デフォルトの名無しさん mailto:sage [2020/08/09(日) 22:23:18 .net]
>>487
何をしたいかに依るのでは
from pathlib import *
#実行する.pyと同じ階層のファイルとディレクトリ一覧取得
#str()でファイルやディレクトリの絶対パスの文字列を取得できる
print( [ str(p) for p in Path().iterdir() ] )

#つまりその文字列を扱いフィルターをかけることもできる
#ファイルネーム・ディレクトリネームの文字数が20以上だけフィルタリング
print( [ str(p) for p in Path().iterdir() if len(p.name) > 20 ] )

506 名前:デフォルトの名無しさん mailto:sage [2020/08/09(日) 23:07:31.69 ID:AwKuV539.net]
>>487
importするのに通常は依存継承関係とか余計な事は考えなくていい
ファイルが違えばスコープも違うのだから必要なモジュールならとにかくimportすればいいだけ

507 名前:デフォルトの名無しさん mailto:sage [2020/08/10(月) 10:08:23 ID:SIP0jVAr.net]
>>150
わりと本気でSQL

508 名前:デフォルトの名無しさん [2020/08/10(月) 10:44:09.54 ID:rTlZ13Bm.net]
>>489
>>490
了解しました

509 名前:デフォルトの名無しさん mailto:sage [2020/08/10(月) 11:19:34 ID:mxDHCoDt.net]
xの値に反比例して1から0まで直線的に減少していく値yが入った

value_y[x]

があって、家などの画像の上に、value_y[x]に比例したピクセル値を持つグレー画像を重ね合わせて表示させたいと思っています。
(左端はグレーで家は見えなくて、右側に行くにつれて段々とグレーが薄くなって家の画像が見えてくる感じ)

openCVとか使えば出来るかなとおもうのですが、重ね合わせようのグレー画像のうまい作り方があったら教えて下さい。

510 名前:デフォルトの名無しさん [2020/08/10(月) 11:58:33.01 ID:rTlZ13Bm.net]
イテレータとリストと配列の違いってなんでしょうか?
かんたんな例え、はありませんかね、、、



511 名前:デフォルトの名無しさん mailto:sage [2020/08/10(月) 12:01:57.46 ID:epTxOZiR.net]
厳格な型制御をするC#から勉強すればそんなアホな質問は出てこない。

512 名前:デフォルトの名無しさん [2020/08/10(月) 12:20:38.32 ID:gyMnY3Cu.net]
>>493
なぜPythonでやる必要があるんですか
GIMPやINKSCAPEの使い方覚えた方がいいんじゃない?
>>494
イテレータは反復子現在地ポインタ
リストはインデックス番号のある配列の一種
配列は並べられた複数の箱






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<295KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef