在Python中获取“ TypeError:字符串索引必须为整数”

时间:2018-08-01 13:32:45

标签: python python-3.x

我尝试在python提示符下的简单步骤中模仿我的代码:

>>> path="D:/workspace/a/b\\c\\d.txt"
>>> path[0,18]

但这给了我以下错误:

TypeError: string indices must be integers

我只想检索目录作为路径。也就是说,我要删除文件名:D:/workspace/a/b\\c

为什么我会收到此错误?

3 个答案:

答案 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个元素中获取项目。