python 當前文件路徑獲取方式_Python獲取當前文件路徑

一. Python 獲取當前文件路徑方法

2. sys.path[0]

獲取文件當前工作目錄路徑(絕對路徑)

sys.argv[0]|獲得模塊所在的路徑(由系統決定是否是全名)

若顯示調用python指令,如python demo.py,會得到絕對路徑;

若直接執行腳本,如./demo.py,會得到相對路徑。

3. __ file __

獲得文件所在的路徑(由系統決定是否是全名)

若顯示執行Python,會得到絕對路徑;

若按相對路徑來直接執行腳本./pyws/path_demo.py,會得到相對路徑。

4. os.path.abspath(__ file __)

獲得文件所在的路徑(絕對路徑)

6. os.path.split(os.path.realpath(__ file __))

將文件路徑名稱分成頭和尾一對,生成二元元組。(文件目錄,文件名)

https://docs.python.org/2/library/os.path.html#os.path.split

二. 舉個栗子

1. Source code

import os

import sys

print("sys.path[0] = ", sys.path[0])

print("sys.argv[0] = ", sys.argv[0])

print("__file__ = ", __file__)

print("os.path.abspath(__file__) = ", os.path.abspath(__file__))

print("os.path.realpath(__file__) = ", os.path.realpath(__file__))

print("os.path.dirname(os.path.realpath(__file__)) = ",

os.path.dirname(os.path.realpath(__file__)))

print("os.path.split(os.path.realpath(__file__)) = ",

os.path.split(os.path.realpath(__file__)))

print("os.path.split(os.path.realpath(__file__))[0] = ",

os.path.split(os.path.realpath(__file__))[0])

print("os.getcwd() = ", os.getcwd())

2. Result

(1) Pycharm project中顯示調用python指令,獲取文件絕對路徑

C:\Python364\python.exe C:/PyCharm/PycharmProject/get_path/path_demo.py

sys.path[0] = C:\PyCharm\PycharmProject\get_path

sys.argv[0] = C:/PyCharm/PycharmProject/get_path/path_demo.py

__file__ = C:/PyCharm/PycharmProject/get_path/path_demo.py

os.path.abspath(__file__) = C:\PyCharm\PycharmProject\get_path\path_demo.py

os.path.realpath(__file__) = C:\PyCharm\PycharmProject\get_path\path_demo.py

os.path.dirname(os.path.realpath(__file__)) = C:\PyCharm\PycharmProject\get_path

os.path.split(os.path.realpath(__file__)) = ('C:\\PyCharm\\PycharmProject\\get_path', 'path_demo.py')

os.path.split(os.path.realpath(__file__))[0] = C:\PyCharm\PycharmProject\get_path

os.getcwd() = C:\PyCharm\PycharmProject\get_path

Process finished with exit code 0

(2)Terminal中直接執行Python腳本,獲取文件相對路徑

C:\PyCharm\PycharmProject\get_path>python path_demo.py

('sys.path[0] = ', 'C:\\PyCharm\\PycharmProject\\get_path')

('sys.argv[0] = ', 'path_demo.py')

('__file__ = ', 'path_demo.py')

('os.path.abspath(__file__) = ', 'C:\\PyCharm\\PycharmProject\\get_path\\path_demo.py')

('os.path.realpath(__file__) = ', 'C:\\PyCharm\\PycharmProject\\get_path\\path_demo.py')

('os.path.dirname(os.path.realpath(__file__)) = ', 'C:\\PyCharm\\PycharmProject\\get_path')

('os.path.split(os.path.realpath(__file__)) = ', ('C:\\PyCharm\\PycharmProject\\get_path', 'path_demo.py'))

('os.path.split(os.path.realpath(__file__))[0] = ', 'C:\\PyCharm\\PycharmProject\\get_path')

('os.getcwd() = ', 'C:\\PyCharm\\PycharmProject\\get_path')

三. 參考

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/534210.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/534210.shtml
英文地址,請注明出處:http://en.pswp.cn/news/534210.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

pdf不支持64位瀏覽器_4MLinux 31.0 發布,不支持32位

Zbigniew Konojacki宣布發布4MLinux 31.0,這是該項目極簡發行版的新穩定版本,專注于四個功能:維護(作為系統救援Live CD),多媒體(用于播放視頻DVD和其他多媒體文件),迷你服務器(使用inetd守護程序)和神秘的版本(提供幾…

java期末考試2013及答案_java筆試經典(題及答案)2013.doc

java筆試經典(題及答案)2013.doc Java筆試經典(基礎部分及答案和分析)1、一個“.java“源文件中是否可以包括多個類(不是內部類)?有什么限制?7答:可以包括多個類,但是最多只能有一個public修飾的類。2、Java有沒有goto?7答:java中…

datatables 行分組信息展開與折疊的功能實現_[LaTeX 嘗試] fancyvrb - 修復行引用的超鏈接跳轉位置

本文已加入專欄文章目錄,歸入「進階使用」文章系列。本文可以看作對這個發生于 2019 年 7 月中旬的 TeX-SX 上自問自答的展開說明。那個回答中避免了 python 的使用,而是利用 zref 宏包把位置信息以文本形式在 pdf 中呈現,好處是不用引入 pyt…

qtcreator攝像頭顯示時間_三星Galaxy S11 +渲染器展現出巨大的相機凹凸和四邊形曲面顯示...

我們正接近一年中三星宣布其Galaxy S系列最新設備的時間。Galaxy S10系列被認為是三星發布的最好的版本之一,因此在這方面他們有很多重要的事情。我們已經看到了Galaxy S11和Galaxy S11e的渲染,但是現在我們首先來看看Galaxy S11 。三星Galaxy S11 與其他…

php源碼安裝配置,php源碼安裝時configure配置參數 | 學步園

在Linux下安裝PHP,源代碼方式安裝,總需要配置很多參數。這里列出常用配置參數,并詳細用中文解釋說明了。給大家一些參考./configure–prefix/usr/local/PHP php 安裝目錄–with-apxs2/usr/local/apache/bi…

python遞歸函數詳解-講解Python中的遞歸函數

在函數內部,可以調用其他函數。如果一個函數在內部調用自身本身,這個函數就是遞歸函數。 舉個例子,我們來計算階乘n! 1 x 2 x 3 x ... x n,用函數fact(n)表示,可以看出: ? 1 fact(n) n! 1 x2 x3 x ... x …

php 高效判斷是否登錄,php 判斷用戶是否登錄

判斷用戶登陸主要分幾個過程,第一步是用戶登陸成功后把數據保存到session中,然后當用戶訪問需要登陸過的用戶權限時就來判斷session是否為空,如果不是就登錄成功。下面來看個實例session_start();if(getconfig("chatroom_admin")$_…

php異步處理任務工具,php異步任務處理: gearman

Gearman是一個用來把工作委派給其他機器、分布式的調用更適合做某項工作的機器、并發的做某項工作在多個調用間做負載均衡準備軟件包gearmand-1.1.12.tar.gzgearman-1.1.1.tgz php擴展安裝支持組件yum -y install boost-devel* gperf* libevent-devel* libuuid-devel*./configu…

頁面錯誤!請稍后再試_微信內嵌H5頁面授權和分享

近期新上線項目,用到了微信授權獲取用戶信息和分享,掉坑無數次,遂寫此篇,為后人指路項目情況技術選型項目語言:HTML、CSS、JavaScript項目框架:Vue.js項目搭建腳手架:vue-cli工程化工具&#xf…

電腦打字手指正確姿勢_正確的彈琴手型,應該是怎樣的?

手型是基礎,手型規范才有助于練習出正確的指法,指法正確就可以提高練習質量。剛入門的時候,不能刻意的要求手型,但是我們要有一個基本的要求,就是手要保持放松。彈琴的時候,沒有多余的身體的力量參與到觸鍵…

php 開源 采集,迅睿CMS 火車頭內容采集

采集工具:火車采集器 v7.6采集模塊:新聞 News一、編寫采集入庫腳本接口新建:./api/caiji.php/*** 數據采集*/define(IS_API, basename(__FILE__, .php)); // 項目標識define(SELF, pathinfo(__FILE__, PATHINFO_BASENAME)); // 該文件的名稱r…

英文數據集txt_YOLOv5在建筑工地中安全帽佩戴檢測的應用(已開源+數據集)

點擊上方“計算機視覺cv”即可“進入公眾號”重磅干貨第一時間送達前言隨著人工智能的發展,現在越來越多的場景需要人工智能。在工廠的廠區中以安全為首,但工人普遍缺乏佩戴安全帽意識;工廠環境復雜,有各種各樣的禁止進入的區域&a…

浪潮集團PHP,浪潮php實習第一天(初識php)

先推薦幾個比較好的php初學者資料php manual.chm(可在csdn下載頻道下載,可查到大部分函數)比較好的開發工具1 eclipse PDT(對eclipse比較熟悉的比較適應)2.zendStudio(公認的最好的php集成開發環境)php沒有想象中的那么難學,不僅僅是它的語法&#xff0c…

檢測到目標url存在內部ip地址泄露_Cendertron,動態爬蟲與敏感信息泄露檢測

Cendertron,動態爬蟲與敏感信息泄露檢測Cendertron Crawler RendertronCendertron https://url.wx-coder.cn/HinPM 是基于 Puppeteer 的 Web 2.0 動態爬蟲與敏感信息泄露檢測工具。其依托于 xe-crawler 的通用爬蟲、調度與緩存模型,新增了 Monkey Test…

wamp2 php配置,wamp安裝后自定義配置的方法

WampServer是目前應用非常廣泛的PHP集成開發環境,本文就來講述Wamp安裝后自定義配置的方法。供大家參考借鑒。具體如下:wamp2.5安裝完畢后,自己手動重新設置了apache的默認根目錄。但是發現本機可以訪問,別人不能訪問。提示信息為…

屏幕壞點檢測圖片_iPhone新機如何檢測質量 iPhone新機檢測質量步驟【詳解】

iPhone新機怎么檢測好壞_iPhone新機檢測質量方法 說實話,蘋果對于iPhone的品控把握確實一代不如一代,特別是去年發布的iPhone7系列,很多用戶都反映自己新買的手機存在劃痕、屏幕發黃、掉漆等問題。那么當我們購買一部全新的iPhone7時&#xf…

php 安全mysql,關于php:我從mysql注入安全嗎?

本問題已經有最佳答案,請猛點這里訪問。這是否足以避免SQL注入?這里只需要mysql_real_escape_string()方法。在將數據插入數據庫之前,不應該執行htmlentities()或urlencode()。這些方法通常是在呈現您提供給用戶的視圖期間編寫的代碼。避免SQ…

excel單元格斜線_怎么在excel中畫斜線?怎么在excel表格中畫斜線?

在excel表格中畫斜線的技巧教程:1.在Excel中打開一個空白工作簿。 2.您可以在任何大小的單元格中執行此操作,但是如果先將其增大則更容易理解。為此,我們只需單擊并按住第1行和第2行之間的線,然后將其拖動到所需的高度即可。然后對…

php報表數據打印機,通過打印機打印帶打印功能的php表

我有以下php表,我如何只在php表中添加打印功能?點擊一個按鈕,下面的表格通過打印機打印,我試過’CTRL P’,我只得到頁面的html部分示例頁眉,頁腳,導航欄,而不是結果php結果echo "FILEIDFirstnameLastnameIssue DateInterest RateTermsBalance OutstandingBalan…

xbox one s驅動_理想照進現實 理想ONE開始接受預定

2016年4月22日,車和家創始人&CEO李想在源碼資本第二屆碼會年會首談車和家,改造城市出行。車和家 創始人&CEO 李 想2016年碼會年會演講2019年4月10日,增程式智能電動車「理想ONE」正式公布售價并開始接受預訂,并將于2019年…