python學習筆記1

2021-10-01 17:33:28 字數 3603 閱讀 6343

def

test

(num)

:print

("在函式內部%d對應的記憶體位址是%d "

%(num,

id(num)))

pass

a=10

#資料位址的本質就是乙個數字

#使用python內建函式id()返回物件的記憶體位址

print

("a變數儲存資料的記憶體位址為%d"%id

(a))

#呼叫test函式,實際上傳遞的是實參儲存資料的引用,而不是實參儲存的資料

test(a)

num=

10def

demo()

:global num#global宣告全域性變數,可以在函式中修改全域性變數

num=

99print

("%d"

%num)

defdemo1()

:print

("%d"

%num)

demo(

)demo1(

)"""

#注意:開發時把所有全域性變數定義在所有函式上方

#保證所有函式都可以訪問到全域性變數

g_num =

10def

demo()

:print

("%d"

% g_num)

print

("%s"

%title)

#再定義乙個全域性變數

title=

"b"#注意title全域性變數需要在函式上方,否則訪問不到。

demo(

)

def

measure()

:"""測量溫度和濕度"""

print

("測量開始..."

) temp=

39#溫度

wetness=

50#濕度

print

("測量結束"

)return

(temp,wetness)

#元組可以包含多個資料,可以使用元組一次返回多個值

#= return temp,wetness

#如果函式返回型別是元組,小括號可以省略

result=measure(

)print

(result)

###如果函式返回值是元組同時希望單獨處理元組中的元素,可以使用多個變數一次接受函式的返回結果

#變數個數和元組中元素個數一致

gl_temp,gl_wetness=measure(

)print

(gl_temp)

print

(gl_wetness)

a=6b=

100#不使用中間值交換數字的解法如下:

"""a=a+b

b=a-b

a=a-b

print(a)

print(b)

"""#python專有解法如下:

a,b=

(b,a)

print

(a)print

(b)

def

demo

(num,numlist)

:print

("函式內部的**:"

)#在函式內部,針對引數使用賦值語句

num=

100#修改區域性變數的引用,不會影響到外部變數的引用

#numlist=[1,2,3]

##!!!在函式內如果使用方法修改了資料的內容,會影響到外部的資料9)

#將9加入到元組中

print

(num,numlist)

print

("函式修改完成"

)gl_num=

99#全域性變數

gl_numlist=[4

,5,6

]print

("未修改前的資料:"

)print

(gl_num,gl_numlist)

demo(gl_num,gl_numlist)

print

(gl_num,gl_numlist)

#python中有兩種多值引數:

# (1)引數名前加乙個*可以接收元組(2)引數名前增加兩個 *可以接收字典。

#使用多值引數求和

defsum_numbers

(*args)

: num=

0print

(args)

for n in args:

num+=n

return num

result=sum_numbers(1,

2,3,

4,5)

print

(result)

#使用元組引數求和

defsum

(agrs)

: num=

0print

(agrs)

for n in agrs:

num+=n

return num

resulta=

sum((1

,2,3

,4,5

))#需要多加乙個括號,不如多值引數方便

print

(resulta)

#定義乙個函式sum_numbers

#能夠接收乙個num的整數引數

#計算1+2+3...num的結果

defsum_numbers

(num)

:#出口

if num ==1:

return

1#假設sum_numbers能夠正確處理累加,再設計累加

temp=sum_numbers(num-1)

return num +temp

result=sum_numbers(3)

print

(result)

class

cat:

defeat

(self)

:print

("%s愛吃魚"

% self.name)

defdrink

(self)

:print

("小貓要喝水"

)tom=cat(

)#新建物件tom

tom.name=

"tom"

tom.eat(

)tom.drink(

)print

(tom)

#列印物件的位址

#再建立乙個貓物件

lazy_cat=cat(

)lazy_cat.name=

"大懶貓"

lazy_cat.eat(

)lazy_cat.drink(

)print

(lazy_cat)

#列印物件位址

lazy_cat2=lazy_cat

#print(lazy_cat2)#列印lazy_cat2物件的位址,和lazy_cat一樣

Python學習筆記(1)

在工作的業餘時間學習了一下python,個人覺得如果有下liunx下工作的習慣話,寫一些小的python指令碼很容易提高工作效率,以下主要是針對python與c 的區別而寫的一些學習筆記,共同溝通一起進步。1 python中不用 表示語句塊,而是用 來表示乙個塊的開始,而用縮進來表示各個語句塊之間的...

Python 學習筆記 1

2.讀了 python簡明教程 前面5章內容,很久之前看過一遍,現在是重溫,加做練習。教程是python v2.x,許多地方都不一樣了 help,print,exit 需要以函式的標準形式來替換,help print exit 之前的 raw input 被去掉,統一作input 3.python ...

python學習筆記(1 )

1 在確定自己不會匯入多個同名函式 從不同的模組匯入 的情況下,可以使用 from math import sqrt from 模組 import 函式 這樣就可以直接使用sqrt 9 而不用每次都用math.sqrt 9 2 可以使用變數來引用函式 及python中的大多數物件 如 import ...