[過去ログ] Pythonのお勉強 Part62 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
16(3): デフォルトの名無しさん (ワッチョイ 022c-plfC) [sage] 2019/09/21(土) 03:11:15 ID:xUElhJo20(1) AAS
Ruby なら、こういう感じ。
ただし、、DryRun なので、実際には実行されません
Python には、Fileutils みたいな、便利なライブラリは無いのか?
require 'fileutils'
( 1..2 ).each do |idx|
FileUtils::DryRun.mkdir( idx.to_s )
FileUtils::DryRun.touch( "#{ idx }/#{ idx }.txt" )
end
出力
mkdir 1
touch 1/1.txt
mkdir 2
touch 2/2.txt
18(1): デフォルトの名無しさん (ワッチョイ 86ce-Ms+D) [sage] 2019/09/21(土) 08:35:59 ID:sgtRiYtH0(1) AAS
>>16
知らないのになぜ答える(呆)
19(2): デフォルトの名無しさん (ワッチョイ ae12-VXuS) [sage] 2019/09/21(土) 08:56:29 ID:809PHD3I0(1) AAS
>>16
rubyは聞いてないです。pythonで回答してください。
23: 15 (ワッチョイ 5197-KC02) [] 2019/09/21(土) 10:54:29 ID:U1H67dB+0(2/2) AAS
>>1515(2): デフォルトの名無しさん (ワッチョイ 5197-KC02) [] 2019/09/21(土) 01:15:40 ID:U1H67dB+0(1/2) AAS
for i in range(1, 6):
subprocess.run(('mkdir %d_new' % (i)).split(' ')
subprocess.run(('cp %d %d_new' % (i, i)).split(' ')
と同様のことを、
for i in range(1, 6):
!mkdir ${i}_new
!cp $i $i_new
みたいな感じで書けないかな、と。
これはpythonの中にbashが入ってる例だけど、逆でもいいので。
だけど、
Jupyterにおいて、
%%bashはセル全体をbashで実行、
!はその行をシェルで実行、で、
>>15の例が実はそのまま動くってことがわかった。
確認不足で質問してしまい申し訳ない。
>>17 xonsh調べてみます。
>>16
うーん、、、、15で13だって名乗り忘れたのも悪いけど、
>>1313(1): デフォルトの名無しさん (ワッチョイ 5197-KC02) [] 2019/09/20(金) 03:06:28 ID:cbLpEk730(1) AAS
Jupyterで、
%%bashって書いたセルの一部でPythonを使うとかいうことはできないのかな。
forループとか、変数展開とか。
もちろんsubprocessで実行すればいいんだけど、シェルがメインでpythonが少しの場合、
なんかいいやり方ないかなと思って。
を読んだらディレクトリを作ったりファイルをコピーしたりということは単なる例で、
言語の制御構文、変数を使いつつシェルをシェルスクリプトレベルに簡単に実行したいという質問だったんですけどね。
あなたの例はJupyter上でシェルを簡単に実行できるからJupyterの機能を使って実現したいという大前提を無視してて
単にRubyでディレクトリの作成とファイルのコピーが出来る、ってだけの例で何の答えにもなってない。
当然Pythonにもファイル操作のライブラリはあるよ。
Rubyなら出来るって思うのは勝手だが、Pythonでは簡単にできないって妄想して発言するのやめてくれないかな。
てかそんなにRubyが良いって言うなら、RubyでJupyterに相当するもの教えてもらえないかな。そうしたら日常で使ってみるから。
irbは相当しないんでよろしく。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.034s