1. 程式人生 > >[Python_3] Python 函數 & IO

[Python_3] Python 函數 & IO

lse 分享 one http -c amp 一個 追加 寫入文件


0. 說明

  Python 函數 & IO 筆記,基於 Python 3.6.2

  參考

   Python: read(), readline()和readlines()使用方法及性能比較

   Python3 File(文件) 方法

   Python基礎

  


1. 函數

# -*-coding:utf-8-*-

"""
    函數
"""

# 定義函數,有return語句,否則返回None
def add(a, b):
    # 有返回語句
    print("a : " + str(a))
    print("b : " + str(b))
    
return a + b print(add(2, 3)) """ 定義函數,有return語句,否則返回None *a : 變長參數 *args : 固定寫法,表示當前位置上任何多個無名參數,它是一個tuple **kwargs: 固定寫法,關鍵字參數,它是一個dict 此種方式類似於Java 的反射中的 Method 類,能夠提取函數的運行時信息。 """ def f1(*a): for e in a: print(e) # 調用函數,傳遞變長參數 f1((1, 2, 3, 4, 5)) def f2(a, b, c, *args):
print(str(args)) f2(1, 2, 3, 4, 5) def foo(x, *args, **kwargs): print(args=, args) print(kwargs=, kwargs) print(**********************) foo(1, 2, 3, 4) foo(1000, a=1, b=2, c=3) foo(1, 2, a=4, b=5, c=100)


2. IO

# -*-coding:utf-8-*-

"""
    IO
"""

"""
    文件讀操作
"""
# 一次性讀取所有行文件
f1 = open("e:/data.txt") lines = f1.readlines() for l in lines: print(l, end="") f1.close() # 每次讀取下一行文件 print() print("=============") f2 = open("e:/data.txt") while (True): # 讀取第一行 line = f2.readline() while line is not None and line != "": print(line, end="") # 讀取下一行 line = f2.readline() else: break f2.close() """ None,類似於 Java 中 null 的表示不存在。 """ x = None print(x) """" 文件寫操作 寫入文件 mode=r | wa | w : overwrite 覆蓋模式 a : append 追加模式 """ f = open("e:/data2.txt", mode="a") f.write("i am panda") f.close() """ 文件重命名 源文件必須存在 """ import os os.renames("e:/data2.txt", "e:/data3.txt") """ 刪除文件 """ import os os.remove("e:/data3.txt") """ 創建 & 刪除空目錄 """ import os # os.mkdir("e:/testdir") os.removedirs("e:/testdir") """ 列出目錄的元素 """ import os files = os.listdir("d:/") for i in files: print(i)


3. 主函數運行

# -*-coding:utf-8-*-

"""
    導入 Python 模塊,每個 Python 文件就是一個模塊
    判斷當前文件是否直接運行,還是被其他引用
    直接運行的時候值為"__main__"
"""
import test6_function
test6_function.add(1, 2)
print(__name__)

if __name__ == "__main__":
    print(100)


4. 參數提取

  模擬參數設置

  技術分享圖片

"""
    參數提取
    通過 sys 的 argv 屬性提取參數列表
"""
# 提取腳本的參數
import sys

r = sys.argv
print(r[0])
print(r[1])

  結果如下,第一個參數為腳本

技術分享圖片


5. 反射訪問

"""
    反射訪問
"""
s = "xxx"
s.__len__()
# 返回對象的指定屬性,沒有的話,可以指定默認值
r1 = getattr(s, "len", "no this attr")
r2 = getattr(s, "__len__", "no this attr")
print(r1)
print(r2)


6. 日期函數

"""
    時間函數
"""
# 導入時間庫
import datetime
datetime.datetime.now()
print(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"))


[Python_3] Python 函數 & IO