我使用rsplit来分割路径名,
rootPath = os.path.abspath(__file__)
rootPath = (rootPath.rsplit('/', 1)[0]).rsplit('/', 1)[0]
但是Pycharm警告说,
expected type
optional [bytes], gotstrinstead
在python doc中,它声明使用sep作为分隔符字符串.
那么如何解决这个问题呢?
似乎rootPath被视为一个字节对象(可能是一个小错误?)或警告是另一部分.
一般来说,PyCharm和错误基本上警告你的是参数必须是None或bytes.这就是Optional的意思,可选[type]是None或type,在你的情况下是字节.
在一个简单的Python REPL中,消息略有不同,但要点是相同的:
b'hello/world'.rsplit('/') # error bytes-like object required
相反,你需要提供一个字节分隔符:
b'hello/world'.rsplit(b'/')
或无,以使其工作.
要么PyCharm中有一个小错误,它在这里报告rsplit不正确,或警告是代码的另一部分.
本文探讨了在PyCharm中使用rsplit方法分割路径时遇到的警告问题,详细解释了警告的原因,即rsplit期望的参数类型为bytes或None,而实际传入的是str类型。文章提供了正确的解决方案,包括在字节字符串上使用字节分隔符。
2万+

被折叠的 条评论
为什么被折叠?



