创建文件python

2024-10-06 11:26:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我在用python创建文件时遇到了一个小问题。我想在桌面上创建并命名它。我的程序应该在其中创建另一个文件夹,并从用户那里取一个名称,但是当我这样做时:

def folder(self):
    home = os.sep.join((os.path.expanduser('~'),'Pulpit'))
    if not os.path.exists(home):
        home = os.path.join((os.path.expanduser('~'), 'Desktop'))
    opto = home + '\OptoMaQ'
    self.directory = opto
    nam = str(self.nmget.get())
    mypath = opto + '\%s'  %nam
    if not os.path.exists(opto):
        os.makedirs(opto)
        if len(nam) == 0:
            self.fold.config(text = 'This name is incorrect',background = 'red')
        else:   
            if not os.path.exists(mypath):
                os.makedirs(mypath)
                self.fold.config(text = 'Folder was created',background = 'green')
            else:
                self.fold.config(text = 'This name is taken',background = 'red')
    else:
        if len(nam) == 0:
            self.fold.config(text = 'This name is incorrect',background = 'red')
        else:   
            if not os.path.exists(mypath):
                os.makedirs(mypath)
                self.fold.config(text = 'Folder was created',background = 'green')
            else:
                self.fold.config(text = 'This name is taken',background = 'red')

当然,这是为了GUI编程。当我运行它时,有一个错误:“opto=home+'\OptoMaQ'TypeError:只能将元组(而不是”str“)连接到元组”。有趣的是,前几天对我有用,现在我不工作了。有人能帮我吗?在


Tags: pathtextselfconfighomeifosexists
1条回答
网友
1楼 · 发布于 2024-10-06 11:26:53

使用:

if not os.path.exists(home):
    home = os.path.join(os.path.expanduser('~'), 'Desktop')
opto = home + r'\OptoMaQ'

os.path.join不接受元组作为参数,os.sep.join接受。在

相关问题 更多 >