os.path.basename适用于URL,为什么?

Rei*_*ica 12 python url path

>>> os.path.basename('http://example.com/file.txt')
'file.txt'
Run Code Online (Sandbox Code Playgroud)

..我认为os.path.*只在本地路径而不是URL上工作?请注意,上面的示例也在Windows上运行..具有类似的结果.

Ale*_*lli 19

在实践中的许多功能os.path都只是字符串处理函数(这只是碰巧成为路径操作尤其方便) -因为做法无伤大雅,偶尔派上用场,而正式地说"不正确",我怀疑这会很快改变-更多细节,在shell /命令提示符下使用以下简单的单行程序:

$ python -c"import sys; import StringIO; x = StringIO.StringIO(); sys.stdout = x; import this; sys.stdout = sys.__stdout__; print x.getvalue().splitlines()[10][9:]"
Run Code Online (Sandbox Code Playgroud)

或者,对于Python 3:

$ python -c"import sys; import io; x = io.StringIO(); sys.stdout = x; import this; sys.stdout = sys.__stdout__; print(x.getvalue().splitlines()[10][9:])"
Run Code Online (Sandbox Code Playgroud)

  • 我不得不说单线是非常令人印象深刻的. (4认同)