【问题标题】:I am trying to read a folder path but I am getting the 'str' has no attribute 'dir' error message我正在尝试读取文件夹路径,但收到“str”没有属性“dir”错误消息
【发布时间】:2020-04-12 22:53:40
【问题描述】:
if __name__ == '__main__':
  args = "C:\Users\Ankuran Das\Desktop\Pyhton\holiday_100"
  working_folder = args.dir
  gmm = load_gmm(working_folder) if args.loadgmm else generate_gmm(working_folder, args.number)
  fisher_features = fisher_features(working_folder, gmm)
  classifier = train(gmm, fisher_features)
  rate = success_rate(classifier, fisher_features)
  print("Success rate is", rate)

我收到以下错误: 回溯(最近一次通话最后): 文件“fishvec.py”,第 135 行,在 工作文件夹 = args.dir AttributeError: 'str' 对象没有属性 'dir'

【问题讨论】:

  • 嗯,args 是一个字符串。不是数组,也不是任何其他对象。就这么简单。
  • 为什么呢?你期望"C:\Users\Ankuran Das\Desktop\Pyhton\holiday_100".dir 给你什么?
  • 我希望将文件夹 holiday_100 加载到 working_folder 我应该做什么建议@jonrsharpe
  • 为什么会这样?这只是一个字符串。查看 os.path 或 pathlib 以解析和操作路径。
  • 也许你想改用os.chdir(working_folder)

标签: python


【解决方案1】:

您的变量 args 是一个简单的字符串变量,而不是具有某些属性 dir 的对象。 只需更改行: working_folder = args.dirworking_folder = 参数 它应该指向你想要的目录。

【讨论】:

    【解决方案2】:

    导入操作系统

    if __name__ == '__main__': args = r"C:\Users\Ankuran Das\Desktop\Pyhton\holiday_100" print(os.getcwd())

    在 os.getcwd() 的帮助下,您也可以检查当前的工作目录。

    【讨论】:

      猜你喜欢
      • 2019-05-30
      • 2023-01-19
      • 1970-01-01
      • 2017-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-21
      相关资源
      最近更新 更多