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

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

在 Python 中創建一個具有選定名稱的文件夾

在 Python 中創建一個具有選定名稱的文件夾

眼眸繁星 2023-03-22 17:09:14
我用 Tkinter 編寫了一個小的 GUI,我要求用戶提供一個目錄來保存某些圖像,通過filedialog.askdirectory. 有了這些信息,我就可以在該目錄中使用創建一個文件夾os.mkdir(),但我需要預定義它的名稱(我使用類似 year_month_day 的結構......)。無論如何在 tkinter 或使用 os 庫中,用戶可以在其中定義文件夾的名稱然后創建?這個想法是當 Windows 文件夾瀏覽器打開時,他們可以轉到所需的路徑并使用他們想要的名稱創建一個文件夾
查看完整描述

3 回答

?
侃侃爾雅

TA貢獻1801條經驗 獲得超16個贊

這是你想要的嗎?


import os

from tkinter.filedialog import askdirectory

import tkinter.messagebox

import tkinter as tk


# Dir select

def selectPath():   

    path_ = askdirectory()

    path.set(path_)


def create_file():  

    print("folder_name: ", folder.get())

    print("path_name: ", path.get())

    dirs = os.path.join(path.get(), folder.get())

    if not os.path.exists(dirs):

        os.makedirs(dirs)

        tkinter.messagebox.showinfo('Tips:','Folder name created successfully!')

    else:

        tkinter.messagebox.showerror('Tips','The folder name exists, please change it')


root = tk.Tk()

root.title('Create folder')

root.geometry('400x380')


path = tk.StringVar()   # Receiving user's file_path selection

folder = tk.StringVar() # Receiving user's folder_name selection


tk.Label(root,text = "Target path:").place(x=50, y= 250)

tk.Entry(root, textvariable = path).place(x=110, y= 250)

tk.Button(root, text = "Path select: ", command = selectPath).place(x=265, y= 250)



tk.Label(root,text = "Folder name:").place(x=50, y= 300)

tk.Entry(root,textvariable = folder).place(x=110, y= 300)

tk.Button(root, text = "Submit: ", command = create_file).place(x=265, y= 300)


root.mainloop()

path和folder變量是選擇的路徑和用戶創建的文件夾名稱。


它在我的電腦上看起來像這樣:

http://img1.sycdn.imooc.com//641ac60f000118d306590758.jpg

查看完整回答
反對 回復 2023-03-22
?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

您可以通過放置一個input稱為文本小部件的小部件來做到這一點。在輸入文件夾名稱并使用選擇路徑后,filedialog您可以創建一個創建目錄的函數。


def create_dir()

    name = file_name.get() # took from the input

    path = os.path.join(dir, name) # dir is a directory taken from the filedialog


查看完整回答
反對 回復 2023-03-22
?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

from datetime import datetime

import os

from tkinter import filedialog


datestring = datetime.today().strftime('%Y-%m-%d') #Formats the date according to year,month,day. 

#You can check out datetime for more info

default_folder = 'Adrain-{}'.format(datestring)


if os.path.exists(default_folder) == True: #Only creates a new folder when non-existing

    pass

else:

    os.mkdir(default_folder)


file_directory = filedialog.askdirectory(title = 'Select the target folder for saving             

records', initialdir = default_folder)


查看完整回答
反對 回復 2023-03-22
  • 3 回答
  • 0 關注
  • 203 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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