tutu小白python day3 初識模組

2021-09-19 23:20:27 字數 2107 閱讀 1582

簡述python的執行過程

在說這個問題之前,我們先來說兩個概念,pycodeobject和pyc檔案

我們在硬碟上看到的pyc自然不必多說,而其實pycodeobject則是python編譯器真正編譯成的結果

當python程式執行時,編譯的結果則是儲存在位於記憶體中的pycodeobject中,當python程式執行結束時,python直譯器則將pycodeobject寫回到pyc檔案中

當python程式第二次執行時,首先程式會在硬碟中尋找pyc檔案,如果找到,則直接載入,

否則就重複上面的內容。

所以我們應該這樣來定位pycodeobject和pyc檔案,我們說pyc檔案其實是pycodeobject

的一種持久化儲存方式。

初識模組

模組名不能與需要匯入的庫名相同

預設是從當前路徑開始查詢

#import sys

#print(sys.path) #列印環境變數

""" 模組的位置

['c:\\users\\tutu\\desktop',

"""

print(sys.ar**) #列印當前目錄的相對路徑

"""取出列表中的第二個值,列表從0開始

python sys_mod.py 1 2 3

#print(sys.ar**[2]) """

os模組,與作業系統互動時使用

import os

os.system("dir") #顯示當前目錄下的檔案

cmd_res = os.system("dir") #給上面命令結果定義個變數cmd_res

print("--",cmd_res)

輸出結果為--0

因為os.system是執行完直接列印在螢幕上,不能存給變數

0為命令的執行結果,0為成功,非0為不成功

os.popen("dir").read()

cmd_res = os.popen("dir").read()

print(cmd_res)

輸出如下:

預設是臨時儲存在記憶體中的,需要用read呼叫

os.popen("dir").read()

cmd_res = os.popen("dir").read()

print(cmd_res)

則輸出正確列出目錄下的檔案

建立目錄

os.mkdir("new_dir")

建立自己的第乙個模組

注意!模組只在當前同一路徑下,或在全域性環境變數中才可呼叫

所以,最好把模組放到環境變數中site-packages下即可。

建立乙個名為login的模組,內容如下:

import getpass

_username ='zhangtutu'

_passwd ='123456'

user =input("請輸入使用者名稱:")

passwd =getpass.getpass("請輸入密碼:")

if _username == user and _passwd == passwd:

print("welcom user %s login"% user)

else:

print("wrong username or passwd")

在sys_mod.py中呼叫login模組:

import login 結果如下:

c:\users\tutu\desktop>python sys_mod.py

請輸入使用者名稱:zhangtutu

請輸入密碼:

welcom user zhangtutu login

!··注意!模組只在當前同一路徑下,或在全域性環境變數中才可呼叫

所以,最好把模組放到環境變數中site-packages下即可。

小白學習python Day3

與數學中的整數意義一致,可正可負,沒有範圍限制 pow x,y 計算x的y次方 十種進製表大形式 十進位制 二進位制 0b,0b 八進位制 0o,0o 十六進製制 0x,0x 帶有小數點及小數的數字,浮點數的取值範圍和小數精度都存在限制 浮點數間的運算存在不確定尾數 二進位制轉換問題 使用round...

小白學習python Day4

兩類四種表示方法 由一對單引號或雙引號表示 單行字串 由一對三單引號或三雙引號表示 多行字串 若希望在字串 現單引號 或雙引號 若希望出現單引號z和雙引號 既有 也有 字串的序號及索引切片 正向遞增 反向遞減 索引 切片 m n k e.g.一二三四五六七 十 1 8 2 的結果是 一三五七 一二三...

小白入門python day5 類與例項

物件導向最重要的概念就是類 class 和例項 instance 例項是根據類建立出來的乙個個具體的 物件 每個 物件 都擁有相同的方法,但各自的資料可能不同。在python中,類是通過class關鍵字定義 class mythreadmanager 自定義執行緒池 def init self,th...