【问题标题】:Mkdir typeerror in Python 2.7Python 2.7 中的 Mkdir 类型错误
【发布时间】:2014-03-20 09:33:08
【问题描述】:

我正在尝试编写一个简单的脚本来使用 Python 在我的 C 驱动器中创建一个名为 Cake 的目录。我按照教程进行操作,但不知道为什么会出现错误。

os.mkdir("C:\\Cake")

Traceback (most recent call last):
  File "<pyshell#14>", line 1, in <module>
    os.mkdir("C:\\Cake")
TypeError: 'str' object is not callable

目前还没有 Cake 文件夹,它在我的个人电脑上,所以我有管理权限。任何帮助将不胜感激。

【问题讨论】:

    标签: python python-2.7 typeerror mkdir


    【解决方案1】:

    导入操作系统后, 您必须将 os.mkdir 设置为一个字符串,该字符串在错误中缩短为 str。 要修复,请重新加载 os 模块。 举个例子, 导入操作系统 os.mkdir "调皮地串起来" 重新加载(操作系统) os.mkdir(r"C:\Cake")

    【讨论】:

      【解决方案2】:

      Python 有时可以让你很容易地在自己的脚下开枪。您在某处用字符串替换了 os.mkdir() 函数。

      您必须在代码的前面部分将 os.mkdir 名称重新绑定到字符串:

      os.mkdir = 'some string'
      

      os.mkdir = some_name_referring_to_a_string
      

      找到那条线并更正它。如果您在 shell 中看到此内容,请使用以下命令重新加载模块:

      reload(os)
      

      演示:

      >>> import os
      >>> os.mkdir = 'Hello world!'
      >>> os.mkdir('/tmp/test')
      Traceback (most recent call last):
        File "<stdin>", line 1, in <module>
      TypeError: 'str' object is not callable
      >>> reload(os)
      <module 'os' from '/Users/mj/Development/venvs/stackoverflow-2.7/lib/python2.7/os.pyc'>
      >>> os.mkdir('/tmp/test')
      

      【讨论】:

      • 嗯,怎么样。感谢您的快速回复!
      • 所以让我直说吧,他将os.mkdir 重新分配给一个字符串,然后然后调用它?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-24
      • 1970-01-01
      • 2011-08-26
      相关资源
      最近更新 更多