我尝试在python提示符下的简单步骤中模仿我的代码:
>>> path="D:/workspace/a/b\\c\\d.txt"
>>> path[0,18]
但这给了我以下错误:
TypeError: string indices must be integers
我只想检索目录作为路径。也就是说,我要删除文件名:D:/workspace/a/b\\c
为什么我会收到此错误?
答案 0 :(得分:2)
path[0,18]
应该是path[0:18]
或path[:18]
甚至更好(无论父目录的长度如何都可以):
import os
os.path.split(path)[0]
答案 1 :(得分:0)
您也可以用正则表达式替换
import re
result = re.sub(r'\\[a-z]*.txt', '', path)
答案 2 :(得分:-1)
path="some/again_a_dir/file.txt"
print(path[0:16])
当要从字符串中获取字母范围时,应使用“:”定义范围。 path[0:16]
表示从字符串的第1个元素到第17个元素中获取项目。