legb原則
#in[1]
#全域性變數的運用
a1=2 #定義全域性變數a1
def fun():
print(a1)
a2=99
print("i am in fun")
print(a2) #此處為區域性變數
print(a1)
fun()
#out[1]
2 #從此行之後為fun()的結果
2 i am in fun
99
#in[2]
#若在全域性輸出區域性變數會出現的情況
a1=2 #定義全域性變數a1
def fun():
print(a1)
a2=99
print("i am in fun")
print(a2) #此處為區域性變數
print(a1)
print(a2)
#out[2]
2traceback (most recent call last):
file "e:\統計\python\3.1.py", line 10, in print(a2)
nameerror: name 'a2' is not defined
#in
a=1b=2
def fun(c,d):
e=111
print("locals={}".format(locals()))
print("globals={}".format(globals()))
fun(100,200)
#out[3]
locals=
globals=, '__builtins__': , '__file__': 'e:\\統計\\python\\3.1.py', 'a': 1, 'b': 2, 'fun': }
#in[4]
x=100
y=100
z1=x+y
z2=eval("x+y")
print(z1)
print(z2)
#out[4]
200200
#in[5]
#exec()範例
x=100
y=100
z1=x+y
z2=exec("x+y")
print(z1)
print(z2)
#out[5]
200none
#in
x=0def fun():
x+=1
print(x)
fun()
fun()
#out[6]
traceback (most recent call last):
file "e:\統計\python\3.1.py", line 8, in fun()
file "e:\統計\python\3.1.py", line 7, in fun
fun()
file "e:\統計\python\3.1.py", line 7, in fun
fun()
file "e:\統計\python\3.1.py", line 7, in fun
fun()
[previous line repeated 975 more times]
file "e:\統計\python\3.1.py", line 6, in fun
print(x)
recursionerror: maximum recursion depth exceeded while pickling an object
注意遞迴的時候一定要注意遞迴次數,不要無限迴圈
#in[7]
#斐波那契
def f(n):
if n == 1:
return 1
if n ==2:
return 2
return f(n-1)+f(n-2)
for i in range(1,11) :
print(f(i))
#out[7]12
35813
2134
5589
#in
#建立空列表
l1=print(type(l1))
print(l1)
l2=[1,2,3]
print(type(l2))
print(l2)
#iut[8]
[1, 2, 3]
分片操作
#in[9]
#訪問列表中的數
l=[1,5,3,6,9,7,8]
print(l[2])
#out[9]
3
#in[10]
#對列表進行擷取
l=[1,3,4,5,6,9,78,5]
#注意擷取的範圍,包含左邊的下標值,不包含右邊的下標值
print(l[2:5])
#下標為空時,擷取所有
print(l[:])
#分片操可以控制增長幅度,預設幅度為1
print(l[1:6:2])
#下標可以超出範圍,超出後不考慮多餘的
#下標值可以為負數,為負數時表示順序從右往左(從-1,-2,-3.。。。)
#out[10]
[4, 5, 6]
[1, 3, 4, 5, 6, 9, 78, 5]
[3, 5, 9]
#in
#分片操作之負數下標
l=[1,2,3,4,5,6,7,8]
print(l[-6:-1])
#正常情況下左邊的值要比右邊的值小
#如果一定左邊的要比右邊的大,則步長一定要用負數,表示從右往左
print(l[-2:-5:-1])
#out[11]
[3, 4, 5, 6, 7]
[7, 6, 5]
#in
#通過id可以直接判斷出分片是從新生成的乙份資料還是使用的同乙份資料
l=[1,2,3,4,5,6]
ll=l[:]
#如果兩個id值一樣,則表明分片產生的列表是使用同一位址的相同資料
#否則,則表明分片是新生成了乙份資料
print(id(l))
print(id(ll))
#out[12]
2454745518216
2454745508872
Python第六次作業
python第六次作業 2018 03 26 7 1 汽車租賃 編寫乙個程式,詢問使用者要租賃什麼樣的汽車,並列印一條訊息,如 let me see if i can find you a subaru car input what kind of the car doyou want print ...
Python打卡第六次
1 x1d np.linspace 4,4,9 reshape 1,1 2 x2d np.c x1d,x1d 2 3 y np.array 0,0,1,1,1,1,1,0,0 45 plt.figure figsize 11,4 這個範圍是怎麼知道的?經驗值 6 pprint np.zeros 4 ...
python實驗 第六次
1 了解約瑟夫環問題。2 了解 python 標準庫 itertools 中的常用函式。3 熟練運用列表切片操作。4 熟練運用迴圈結構和選擇結構。5 熟練運用列表方法。6 熟練掌握函式定義與使用。7 理解迭代器物件和使用內建函式 next 訪問迭代器物件中元素的方法。有n個人圍成一圈,從1開始按順序...