Python學習筆記(三) Python函式

2021-08-08 02:49:12 字數 2996 閱讀 3707

def

functionname

( parameters ):

"函式_文件字串"

function_suite

return [expression]

1、在 python 中,型別屬於物件,變數是沒有型別的。

2、python 函式的引數傳遞:

在 python 中,strings, tuples, 和 numbers 是不可更改的物件,而 list,dict 等則是可以修改的物件。

不可變型別:類似 c++ 的值傳遞,如 整數、字串、元組。如fun(a),傳遞的只是a的值,沒有影響a物件本身。比如在 fun(a)內部修改 a 的值,只是修改另乙個複製的物件,不會影響 a 本身。

def

changeint

( a ):

a = 4

print

"函式內取值",b #輸出結果: 4

return

b = 1

changeint(b)

print

"函式內取值",b #輸出結果: 1

可變型別:類似 c++ 的引用傳遞,如 列表,字典。如 fun(b),則是將 b 真正的傳過去,修改後 fun 外部的 b 也會受影響。

def

changelist

( list ):

"修改傳入的列表"

print

"函式內取值: ", list #輸出結果: [10, 20, 30, [1, 2, 3, 4]]

return

# 呼叫changelist函式

list = [10,20,30];

changelist( list );

print

"函式外取值: ", list #輸出結果: [10, 20, 30, [1, 2, 3, 4]]

1、必備引數須以正確的順序傳入函式,如呼叫上述 changelist() 函式,必須傳入乙個引數,不然會出現語法錯誤。

2、預設引數:呼叫函式時,預設引數的值如果沒有傳入,則被認為是預設值。

區域性變數只能在其被宣告的函式內部訪問,而全域性變數可以在整個程式範圍內訪問。

全域性變數想作用於函式內,在變數前加 global,實現在函式內部改變變數值。

globvar = 0

defset_globvar

():global globvar # 使用 global 宣告全域性變數

globvar = 1

從標準輸入讀取乙個行,並返回乙個字串(去掉結尾的換行符):

str = raw_input("請輸入字串:");
和 raw_input([prompt]) 函式類似,但是 input 可以接收乙個python表示式作為輸入,並將運算結果返回。

str = input("請輸入:");

print "輸入的內容是: ", str

結果:

請輸入:[x*5

for x in

range(2,10,2)]

輸入的內容是: [10, 20, 30, 40]

python 提供了必要的函式和方法進行預設情況下的檔案基本操作。可以用 file 物件做大部分的檔案操作。

file object = open

(file_name [, access_mode][, buffering])

附:file物件的屬性

fo = open("test.txt", "wb")

print

"檔名: ", fo.name

print

"是否已關閉 : ", fo.closed

print

"訪問模式 : ", fo.mode

file 物件的 close()方法重新整理緩衝區裡任何還沒寫入的資訊,並關閉該檔案,這之後便不能再進行寫入。

當乙個檔案物件的引用被重新指定給另乙個檔案時,python 會關閉之前的檔案。

fo = open("test.txt", "wb")

print

"檔名: ", fo.name

fo.close()

write()方法可將任何字串寫入乙個開啟的檔案。

read()方法從乙個開啟的檔案中讀取乙個字串。

# 開啟乙個檔案

fo = open("test.txt", "wb")

fo.write( "www.runoob.com!\nvery good site!\n");

str = fo.read(10);

print

"讀取的字串是 : ", str

# 關閉開啟的檔案

fo.close()

python的os模組提供了幫你執行檔案處理操作的方法。

import os       #必須先導入os模組,然後才可以呼叫相關的各種功能

# 重新命名已存在檔案test1.txt到test2.txt

os.rename( "test1.txt", "test2.txt" )

# 刪除乙個已經存在的檔案test2.txt

os.remove("test2.txt")

#在當前目錄下建立乙個新目錄test。

os.mkdir("test")

# 將當前目錄改為"/home/anngic"

os.chdir("/home/anngic")

# 顯示當前的目錄

print os.getcwd()

# 刪除」/tmp/test」目錄

os.rmdir( "/tmp/test" )

怎樣學習python語言 如何學習python語言

python語言很神秘嗎 python作為一款類自然語言的程式語言,很方便的就可以上手,而且可以說是老少皆宜。用python程式設計非常簡單,只要有一台電腦 無論windows或者蘋果 就可以完成python程式設計。完成python程式設計首先需要在電腦上安裝python環境,安裝完成後就可以開始...

python學習筆記(三)

python的序列 列表,元組,字串都是列表,列表的主要特點是索引和切片操作 序列的基本操作 1.len 求序列的長度 2.連線兩個序列 3.重複序列元素 4.in判斷序列是否在元組中 5.max 返回最大值 6.min 返回最小值 7.cmp tup1,tup2 比較兩個序列的值 元組 元組和字串...

python學習筆記三

一 輸出 print的幾種用法 print hello world hello world中間有空格 print hello wolrd helloworld 中間沒有空格 print hello wolrd helloworld 中間沒有空格 print hello world hello wor...