问题描述
这是我的代码:
import os
path1 = r'c:\super'
path2 = r'c:/super'
print(os.path.basename(path1))
print(os.path.basename(path2))
pycharm 的结果是:
super
super
google colab 的结果是:
c:\super
super
为什么它们在两个平台上的表现如此不同?
解决方法
我认为是python编译器的“GCC实现”问题。
我已经试过了:
import os
import sys
path=[]
path.append('c:\super')
path.append('c:\a\b\super')
path.append(r'c:\super')
path.append(r'c:\a\b\super')
path.append('c:\\a\\b\\super')
path.append('c:/a/super')
path.append(r'c:/a/super')
for p in path:
print (os.path.basename(p))
print(sys.version)
合作报告
c:\super
c:\super
c:\super
c:\a\b\super
c:\a\b\super
super
super
3.6.9 (default,Oct 8 2020,12:12:24)
[GCC 8.4.0]
repl-it 上的相同代码(例如)获取:
但同样的代码在 3.8.5 / Intel 得到 answer from local Intel