簡體   English   中英

BASE_DIR使用print輸出正確,但在變量中僅輸出C:

[英]BASE_DIR outputs correct using print, but in a variable it just outputs C:

如果我在base_dir = settings.BASE_DIR上使用print, base_dir = settings.BASE_DIR正確輸出所有內容。 但是,當我使用此變量使用os.path.join創建新變量時,它僅輸出C:

打印示例: C:\\Users\\me\\Google Drive\\gitlab\\rootfolder

僅輸出C:代碼示例,其后的路徑顯示正確。

blendfile = os.path.join(base_dir, '/var/media', userpathname, newest).replace("\\\\", "/")

出來為: C:/var/media/userpathname/newest

更改'/var/media'var/media'join的功能,也就是從第二個參數中刪除前述斜線 因此代碼應該是

blendfile = os.path.join(base_dir, 'var/media', userpathname, newest).replace("\\", "/")




In [16]: import os                                                                                                                                    

In [17]: BASE = "Users\me\Google Drive\gitlab\rootfolder"                                                                                             

In [18]: append_path__1 = "/var/media" # with preceeding slash                                                                                                                

In [19]: append_path__2 = "var/media"  # without preceeding slash                                                                                                               

In [20]: os.path.join(BASE,append_path__1)                                                                                                            
Out[20]: '/var/media'

In [21]: os.path.join(BASE,append_path__2)                                                                                                            
Out[21]: 'Users\\me\\Google Drive\\gitlab\rootfolder/var/media'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM