我正在使用rsplit
分割路径名称,
rootPath = os.path.abspath(__file__)
rootPath = (rootPath.rsplit('/', 1)[0]).rsplit('/', 1)[0]
但是 Pycharm 警告,
在
python doc
中,它使用sep
作为分隔符字符串进行声明。那么如何解决呢?
最佳答案
似乎rootPath
被视为字节对象(也许是个小错误?),或者警告是针对另一部分的。
通常,PyCharm和该错误实际上是在向您警告,该参数必须是None
或bytes
。这就是 Optional
的意思,Optional[type]
是None
或type
,在您的情况下是bytes
。
在简单的Python REPL中,消息略有不同,但要旨是相同的:
b'hello/world'.rsplit('/') # error bytes-like object required
相反,您需要提供
byte
分隔符:b'hello/world'.rsplit(b'/')
或
None
,以使其正常工作。PyCharm中有一个小错误,在这里错误地报告了
rsplit
,或者警告是针对您代码的另一部分。关于python - Pycharm预期类型 'optional[bytes]'改为 'str',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39447741/