亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么目錄嵌套?

為什么目錄嵌套?

狐的傳說 2021-05-09 12:13:28
我正在編寫一個程序,該程序需要一個.csv文件并將每一行寫入到新創建的目錄(每個目錄中有1個xml文件)中的xml文件中。它可以工作,但是我的目錄嵌套了。我該如何修改以便它們不嵌套?import os, csvmetadata = csv.reader(open('metadata.csv'))row_num = 0for row in metadata:    if row_num == 0:        tags = row    else:        os.makedirs('submission-%d' % row_num)        os.chdir('submission-%d' % row_num)        out_file = open('metadata-xml-%d.xml' % row_num, 'w')        out_file.write('<submissionData>' + '\n')        for i in range(len(tags)):            out_file.write('    ' + '<' + tags[i] + '>' + row[i] + '</' + tags[i] + '>' + '\n')        out_file.write('</submissionData>')        print(file=out_file)    row_num +=1out_file.close()
查看完整描述

3 回答

?
慕桂英546537

TA貢獻1848條經驗 獲得超10個贊

如lenik所述,您無需更改為子目錄。如果將您else:的代碼塊替換為以下代碼,則目錄將不會嵌套,并且將按照您期望的方式創建:


else:

    dir_name = 'submission-%d' % row_num

    os.makedirs(dir_name)

    file_name = os.path.join(dir_name, 'metadata-xml-%d.xml' % row_num)

    out_file = open(file_name, 'w')

    out_file.write('<submissionData>' + '\n')

    for i in range(len(tags)):

        out_file.write('    ' + '<' + tags[i] + '>' + row[i] + '</' + tags[i] + '>' + '\n')

    out_file.write('</submissionData>')

    print(file=out_file)

確保您正確縮進該代碼,否則會出現錯誤。


查看完整回答
反對 回復 2021-05-18
?
阿晨1998

TA貢獻2037條經驗 獲得超6個贊

不要讓程序表現得像人一樣,不要使用chdir():


folder = 'submission-%d' % row_num

name = os.path.join( folder, 'metadata-xml-%d.xml' % row_num)

out_file = open( name, 'w')

更簡單易懂。而且您不必擔心再繞著子文件夾走動。


查看完整回答
反對 回復 2021-05-18
  • 3 回答
  • 0 關注
  • 255 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號