我的程序中有一部分需要使用目录。我目前的代码是:
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'
答案 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.join
或os.sep
,因此更改它们并不会产生任何影响。
答案 2 :(得分:0)
您可以替换&#39; \\&#39;与&#39; /&#39;
path = path.replace('\\','/')