1.檔案的寫操作
找到檔案,指定檔案的路徑就可
如果檔案存在,就直接寫入,他會取代原料來的資料
如果檔案不存在,python幫我們自動建立
open()方法,用於指向乙個檔案,找到或者是鎖定乙個檔案
第乙個引數,是檔案的路徑
第二個引數,是檔案要做什麼操作, 'w' write,寫。 'r' read,讀
第三個引數,指定編碼的方式,預設引數,預設值是none,encoding=編碼方式
常用的編碼方式主要兩種情況,1,utf-8(最常用,最廣落使用) 2.gbk
注意,編碼方式那裡要填入字串型別
open方法返回的是乙個檔案物件,是乙個檔案的指向
我們可以使用這個檔案物件的方法進行相關操作
寫入檔案
關閉檔案
2.檔案的讀操作
找到檔案
讀取檔案
關閉檔案
f = open(路徑,'r', encoding='utf8')
c=f.read()
m=eval(c)
f.close()
3.檔案的編碼形式
主要了解兩種
1,gbk,主要是針對中文的編碼和解碼,windows作業系統預設是gbk的
2,utf-8 或者 utf8 , 是一種功能很全的編碼,支援各國語言
編碼159+1024
解碼-1024
4.資料變字串方法:
有兩種方法可以把資料轉換為字串
可以通過連線的方式,把乙個列表轉為乙個字典
連線符的字串.join(列表)
res = '_'.join(['1','2','3'])
res的效果是
'1_2_3'
直接強轉
str()
強制轉換
可以把常見的資料型別轉為字串型別
如果希望把資料儲存到檔案中
使用str()函式來轉換資料
返回值就是乙個字串型別的資料
5.eval函式
功能是讓字串中包裹的內容恢復活性
eval(字串)
6.函式遞迴:拆包基本
我有乙個元組,裡面有兩個成員
我可以用兩個變數分別接收元組中的成員
t = ('a','b')
x, y = t
# x = 'a', y = 'b'
拆包操作,兩邊的資料需要保持一致
否則,報錯
7.拆包高階
對於乙個有多個返回值的函式
返回的最終結果,本質上是乙個元組
因此我們可以用拆包的方式,獲取元組中的資料
def fun():
return 1, 2
a, b = fun()
8.拆包繼續高階
函式定義時,如果在形參前面加上了乙個*,表明這個形參可以接收多個位置引數(實參)
例如
def fun(*arg):那麼這個被加了*的arg,會有吸附的功能
如果呼叫函式的時候,我們使用位置傳遞的引數,都會被這個形參吸收
fun(1,2,"hello",[1,2,3])對於函式呼叫時候的拆包
指的是實參如果是乙個元組,我們在這個元組前面加上乙個星花,可以把這個元組拆掉
效果就等同於位置傳參
fun(*(1,2,3))9.函式遞迴介紹效果等同於
fun(1,2,3)
星花和元組的括號同時消失,效果就相當於是位置傳參了
函式的遞迴本質是一種特別的函式巢狀呼叫
普通的函式巢狀呼叫是a函式呼叫b函式
函式遞迴,是自己呼叫自己
10.函式遞迴的注意
需要有條件
需要有乙個退出遞迴的時機,時機成熟(滿足一定的條件,需要跳出來)
第十二次課堂總結
知識點 1如果定義乙個字元指標接收字串常量的值,該指標就指向字串的首字元。這樣,字元陣列和字元指標都可以用來處理字串。2定義字元指標後,如果沒有對它賦值,指標的值是不確定的,不能明確它指向的記憶體單元。3為了盡量避免引用未賦值的指標所造成的危害,在定義指標時,可先將它的初值置為空。4字串函式 用法 ...
第十二次作業總結
字串和字元指標 字串常量 array point 用一對雙引號括起來的字串行 被看做乙個特殊的一維字元陣列,在記憶體中連續存放 實質上是乙個指向該字串首字元的指標常量 char sa array char sp point printf s sa printf s sp printf s n str...
第十二周專案2 2 遞迴函式
問題及 檔名稱 test.cpp 作 者 陳文青 完成日期 2014年11月16日 版 本 號 v1.0 問題描述 寫出求1 3 n的遞迴式,並編寫出遞迴函式求解。程式輸入 乙個整數,n 程式輸出 乙個長整型 y,表示n以內的奇數積 include using namespace std long ...