只是想知道有多少人在Python中使用路径模块,比如Jason Orendorff的那个,而不是os.path用于加入和分割路径?你用过:
我知道Jason的路径模块被制作成PEP 355并被BDFL拒绝.这似乎主要是因为它试图在一个班级中做所有事情.
我们的用例主要是简化路径组件的连接和拆分,所以如果这样的路径类只实现了拆分/连接类型的操作,我们会很高兴.谁不想这样做:
path(build_dir, path(source_file).name)
Run Code Online (Sandbox Code Playgroud)
或这个:
build_dir / path(source_file).name
Run Code Online (Sandbox Code Playgroud)
而不是这个:
os.path.join(build_dir, os.path.basename(source_file))
Run Code Online (Sandbox Code Playgroud)
Mat*_*lin 11
我可以毫不犹豫地选择一个Python程序并解释当前的标准方法 - 它是明确的并且没有歧义:
os.path.join(build_dir, os.path.basename(source_file))
Run Code Online (Sandbox Code Playgroud)
Python的动态类型使得第一种方法在阅读时很难理解:
build_dir / path(source_file).name
Run Code Online (Sandbox Code Playgroud)
另外,划分字符串并不常见,这会带来更多混乱.我怎么知道那两个不是整数?还是漂浮?如果两者都以非字符串类型结尾,则不会在运行时获得TypeError.
最后,
path(build_dir, path(source_file).name)
Run Code Online (Sandbox Code Playgroud)
那怎么比os.path方法更好?
虽然他们可以"简化"编码(即,使编写更容易),但如果不熟悉替代模块的其他人需要维护代码,那么您将遇到冲突.
所以我想我的答案是:我没有使用替代路径模块.os.path已经拥有了我需要的一切,它的界面也不错.
| 归档时间: |
|
| 查看次数: |
2649 次 |
| 最近记录: |