欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

python模塊導入總結

系統 1848 0

python模塊導入總結

?

模塊導入方式

定義test.py模塊

            
              def
            
            
               print_func():
    
            
            
              print
            
            (
            
              "
            
            
              hello
            
            
              "
            
            )
          

import 語句

導入模塊語法

            import module1[, module2[,... moduleN]]
          

引用print_func()函數

            模塊名.函數名
          
            
              #
            
            
              !/usr/bin/python
            
            
              
#
            
            
               -*- coding: UTF-8 -*-
            
            
              #
            
            
               導入模塊
            
            
              import
            
            
               test
 

            
            
              #
            
            
               現在可以調用模塊里包含的函數了
            
            
test.print_func()
          

?

from…import 語句

Python 的 from 語句讓你從模塊中導入一個指定的部分到當前命名空間中。語法如下:

            
              from
            
             modname 
            
              import
            
             name1[, name2[, ... nameN]]
          

例如,要導入模塊 fib 的 fibonacci 函數,使用如下語句:

            
              from
            
             fib 
            
              import
            
             fibonacci
          

這個聲明不會把整個 fib 模塊導入到當前的命名空間中,它只會將 fib 里的 fibonacci 單個引入到執行這個聲明的模塊的全局符號表。

?

from…import* 語句

把一個模塊的所有內容全都導入到當前的命名空間也是可行的,只需使用如下聲明:

            
              from
            
             modname 
            
              import
            
             *
          

這提供了一個簡單的方法來導入一個模塊中的所有項目。然而這種聲明不該被過多地使用。

例如我們想一次性引入 math 模塊中所有的東西,語句如下:

            
              from
            
             math 
            
              import
            
             *
          

?

?

python絕對路徑和相對路徑

轉自https://blog.csdn.net/databatman/article/details/49453953

            
              下面的路徑介紹針對windows,其他平臺的暫時不是很了解。

在編寫的py文件中打開文件的時候經常見到下面其中路徑的表達方式:

open(
            
            
              '
            
            
              aaa.txt
            
            
              '
            
            
              )  
open(
            
            
              '
            
            
              /data/bbb.txt
            
            
              '
            
            
              )  
open(
            
            
              '
            
            
              D:\\user\\ccc.txt
            
            
              '
            
            
              )  
這三種表達式里面,前兩個都是相對路徑,第三個則是絕對路徑。絕對路徑比較好理解,就是最完整的路徑,相對路徑的相對則是不完整路徑,這個相對指的就是相對于當前文件夾路徑,其實就是你編寫的這個py文件所放的文件夾路徑!也就是說你寫的相對路徑必須是當前文件夾A里的文件a或者A里的文件夾B里的文件才可以open。

假設當前的py文件夾所處的位置是:D:\user\public

那么三行代碼打開的文件所屬的路徑分別是:

D:\user\public\aaa.txt

D:\user\public\data\bbb.txt

D:\user\private\ccc.txt

很好理解就是當要打開py文件所處的文件時只要使用相對路徑就行了,而要使用其他文件夾的則需使用絕對路徑。

注:我們常用’
            
            /‘來表示相對路徑,’\‘來表示絕對路徑,上面的路徑里\\是轉義的意思。此外,網頁網址和linux、unix系統下一般都用’/
            
              ‘。

當然我們也可以獲得當前文件夾的絕對路徑,如下:


            
            
              import
            
            
               os  
path1
            
            =os.path.abspath(
            
              '
            
            
              .
            
            
              '
            
            )   
            
              #
            
            
              表示當前所處的文件夾的絕對路徑  
            
            
path2=os.path.abspath(
            
              '
            
            
              ..
            
            
              '
            
            )  
            
              #
            
            
              表示當前所處的文件夾上一級文件夾的絕對路徑  
            
            
所以我們常設置一個path1的全局變量來表示當前的絕對路徑,再加上相對路徑來打開需要打開的文件,這么做是為了在不同的平臺上不沖突,因為不同平臺在相對路徑上的表示上存在區別。
          

?

PYTHONPATH 變量

作為環境變量,PYTHONPATH 由裝在一個列表里的許多目錄組成。PYTHONPATH 的語法和 shell 變量 PATH 的一樣。

在 Windows 系統,典型的 PYTHONPATH 如下:

          set PYTHONPATH=c:\python27\lib;

        

在 UNIX 系統,典型的 PYTHONPATH 如下:

          set PYTHONPATH=/usr/local/lib/python
        

?

搜索路徑

當你導入一個模塊,Python 解析器對模塊位置的搜索順序是:

  • 1、當前目錄
  • 2、如果不在當前目錄,Python 則搜索在 shell 變量 PYTHONPATH 下的每個目錄。
  • 3、如果都找不到,Python會察看默認路徑。UNIX下,默認路徑一般為/usr/local/lib/python/。

模塊搜索路徑存儲在 system 模塊的 sys.path 變量中。變量里包含當前目錄,PYTHONPATH和由安裝過程決定的默認目錄。

?

python中設置PYTHONPATH 變量

PYTHONPATH是Python中一個重要的環境變量,用于在導入模塊的時候搜索路徑.可以通過如下方式訪問:

            
              import
            
            
               sys


            
            
              print
            
            (sys.path)
          
            [
            
              '
            
            
              C:\\Pycham
            
            
              '
            
            , 
            
              '
            
            
              C:\\Pycham
            
            
              '
            
            , 
            
              '
            
            
              C:\\Users\\Administrator\\my_site
            
            
              '
            
            , 
            
              '
            
            
              C:\\Users\\Administrator\\mysite
            
            
              '
            
            , 
            
              '
            
            
              C:\\Users\\Administrator\\test_login
            
            
              '
            
            , 
            
              '
            
            
              C:\\Pycham\\anaconda\\Scripts\\python37.zip
            
            
              '
            
            , 
            
              '
            
            
              C:\\ProgramData\\Anaconda3\\DLLs
            
            
              '
            
            , 
            
              '
            
            
              C:\\ProgramData\\Anaconda3\\lib
            
            
              '
            
            , 
            
              '
            
            
              C:\\ProgramData\\Anaconda3
            
            
              '
            
            , 
            
              '
            
            
              C:\\Pycham\\anaconda
            
            
              '
            
            , 
            
              '
            
            
              C:\\Pycham\\anaconda\\lib\\site-packages
            
            
              '
            
            , 
            
              '
            
            
              C:\\ProgramData\\Anaconda3\\lib\\site-packages
            
            
              '
            
            , 
            
              '
            
            
              C:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32
            
            
              '
            
            , 
            
              '
            
            
              C:\\ProgramData\\Anaconda3\\lib\\site-packages\\win32\\lib
            
            
              '
            
            , 
            
              '
            
            
              C:\\ProgramData\\Anaconda3\\lib\\site-packages\\Pythonwin
            
            
              '
            
            ]
          

路徑列表的第一個元素為空字符串,代表的是相對路徑下的當前目錄.

由于在導入模塊的時候,解釋器會按照列表的順序搜索,直到找到第一個模塊,所以優先導入的模塊為同一目錄下的模塊.

導入模塊時搜索路徑的順序也可以改變.這里分兩種情況:

1,通過sys.path.append(),sys.path.insert()等方法來改變,這種方法當重新啟動解釋器的時候,原來的設置會 失效 .

            
              import
            
            
               sys
  sys.path.append(
            
            
              '
            
            
              /home/test/
            
            
              '
            
            )
          

2,改變PYTHONPATH,這種設置方法 永久有效 :

            export PYTHONPATH=$PYTHONPATH:/home/test
          

在這種情況下,可以通過在sys.path列表顯示的路徑中路徑件來實現:文檔

?


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产成人三级 | 国产男女免费完整版视频 | 国产精品免费观看 | 青娱乐在线视频盛宴 | 久久不卡免费视频 | 天天躁日日躁狠狠躁中文字幕 | 亚洲国产综合人成综合网站00 | 免费成人直播 | 亚洲第一男人天堂 | 国产成人av在线 | 一区二区三区四区在线播放 | 狠狠伊人| 伊人二本二区 | 噜噜噜天天躁狠狠躁夜夜精品 | 色老头久久网 | 久久综合丝袜长腿丝袜 | 日本在线你懂的 | 欧美黑人狂野猛交老妇 | 九九热视频免费 | 成人免费网址在线 | 国产成人精品久久二区二区91 | 男女性关系视频免费观看软件 | 九一国产在线观看 | 啪一啪在线视频 | 国产成人羞羞视频在线 | 亚洲国产网站 | 亚洲AV久久无码精品九号 | 99热.com| 欧美日韩一区二区视频在线观看 | 午夜视频网址 | 国产亚洲一区二区三区在线观看 | 精品人妻无码一区二区三区手机板 | 波多野结衣高清在线播放 | 亚洲国产综合久久精品 | 国产美女被爽到高潮免费A片小说 | 国产精品欧美一区二区三区 | 青青色在线观看 | 在线视频综合视频免费观看 | a成人 | 国产免费观看视频 | 久久久精品免费热线观看 |