如何在python 3中用/替换\\?

时间:2017-08-09 10:55:27

标签: python python-3.6 python-os

我的程序中有一部分需要使用目录。我目前的代码是:

path = os.path.join('C:','Users',getpass.getuser(),'AppData','Roaming','Microsoft','Windows','Start Menu','Programs','Startup')

可变路径打印:'C:Users \\ name \\ AppData \\ Roaming \\ Microsoft \\ Windows \\ Start Menu \\ Programs \\ Startup'。

我的问题是如何让var路径打印'C:Users / name / AppData / Roaming / Microsoft / Windows / Start Menu / Programs / Startup'

3 个答案:

答案 0 :(得分:0)

使用.replace()字符串方法

"C:Users\\name\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup".replace('\\', '/')

#'C:Users/name/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup'

答案 1 :(得分:0)

根据评论中的建议,系统会这样做。

最好更改DROP PROCEDURE IF EXISTS medianAge; DELIMITER // CREATE PROCEDURE medianAge(OUT median DATE) BEGIN DECLARE set_size INT(10); DECLARE median_index INT; DECLARE counter INT; DECLARE current_age DATE; DECLARE all_bdates CURSOR FOR SELECT bdate FROM employee ORDER BY bdate ASC; SET set_size = (SELECT COUNT(bdate) FROM employee); SET median_index = FLOOR(set_size/2); SET counter = 0; OPEN all_bdates; WHILE counter < median_index DO FETCH all_bdates INTO current_age; SET counter = counter + 1; END WHILE; SET median = FLOOR(current_age); END// DELIMITER ; CALL medianAge(@median); SELECT @median; os.sep,但是你可以这样做。

os.path.sep

但你可以简单地使用它,

>>> os.path.sep = '\\'
>>> os.path.sep
'\\'              #we have changed the separator
>>> os.sep.join(['C:','Users',getpass.getuser(),'AppData','Roaming','Microsoft','Windows','Start Menu','Programs','Startup'])
'C:\\Users\\name\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup'

两者都与评论中提到的相同!

同样>>> '\\'.join(['C:','Users',getpass.getuser(),'AppData','Roaming','Microsoft','Windows','Start Menu','Programs','Startup']) 'C:\\Users\\name\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup' 不依赖于os.path.joinos.sep,因此更改它们并不会产生任何影响。

答案 2 :(得分:0)

您可以替换&#39; \\&#39;与&#39; /&#39;

path = path.replace('\\','/')