python3 全局变量 局部变量_python3 函数传参练习 全局变量与局部变量 的理解
額 還是繼續抄一邊NLP第二條:
2.一個人不能控制另外一個人
一個人不能改變另外一個人,一個人只能改變自己。
每個人的信念,價值觀,規條系統只對本人有效,不應強求別人接守。
改變自己,別人才會有可能改變。
一個人不能推動另外一個人,每個人都只可以自己推動自己。
找出對方的價值觀,創造,增大或轉移對方在乎的價值,對方便會產生推動自己的行為。
一個人因此不能“教導”另外一個人,一個人只能引導另外一個人取學習。
因此一個人不能希望另外一個人放棄自己的一套信念,價值觀和規條系統,而去接受另外的一套。
好的動機只給一個人取去做某一件事的原因,但是不能給他控制別人,或使事情恰如他所愿發生的權利。
不強迫別人跟隨自己的一套信念,價值觀和規條,別人便不會抗拒。
同樣的,我們只能自己推動自己。
唉,還有點兒看不懂。。。。。
先來幾個Pycharm的快捷鍵 炒雞好用!!!
Ctrl + 鼠標左鍵 可以來回看函數調用
Shift + Enter 快速換行
Ctrl + d 復制一行
Ctrl +y 刪除一行
Ctrl + / 注釋一行或所選多行
Shift + Tab? 所選多行后退一個縮進
函數的三大性質:減少重復代碼? 使程序變得可擴展 使程序變得易維護
三大編程方式:面向對象方法(Python)? ? ? 面向過程方法(C)? ?函數式編程(Erlang)
核心? ? ? ? ? ? ? ? ? ? ? ? 類(class)? ? ? ? ? ? ? ? ? ?無返回值函數? ? ? ? ? ? ?有返回值函數
草稿如下。。。
1 #!usr/bin/env/ python
2 #-*- coding:utf-8 -*-
3 #Author: XiaoFeng
4
5 a = 1, 2, 3 #這樣賦值,結果是元組輸出 理解這點很關鍵 下面都得用!!!
6 print(a)7 print("-" * 50)8
9
10 def test(): #這是無參函數 也叫面向過程
11 print("呀哈哈哈哈")12 #沒有return 所以也叫面向過程
13
14
15 t =test()16 print(t) #返回空
17 print("-" * 50)18
19
20 deftest0():21 print("呀哈哈哈哈")22 return 1, "a", ["list"], {"ket": "value"}23 #啥都能返回 以元組打包的形式返回
24
25
26 t =test0()27 print(t)28 print("-" * 50)29
30
31 def test1(x, y, z): #x,y,z是位置參數 賦值與實參位置有關
32 print(x)33 print(y)34 print(z)35 return "test" #有返回值 即為函數式編程 只有一個數據的時候就不打包了
36
37
38 t2 = test1(1, 2, 3) #第一種輸入方式 按順序賦值
39 print(t2)40 print("-" * 50)41 t3 = test1(y=1, x=2, z=3) #關鍵字賦值 想咋輸咋輸,不用在乎順序
42 print("-" * 50)43 #t4 = test2(y=1,2,3) 這就不對 這樣寫y現在是元組了
44 t5 = test1(1, z=2, y=3) #這樣混著用,
45 print("-" * 50)46 #t5 = test2(z=2, 1, y=3) 這就不行 那不就是z 變成元組了么
47 #所以想混著用,那就得把關鍵字放后面,前面的按順序
48
49
50 def test2(x, y=1): #默認形參
51 print(x)52 print(y)53
54
55 test2(2) #默認形參可不傳值給他
56 test2(2, y=2) #以關鍵字賦值的方式改默認
57 test2(2, 2) #這樣也可以。。
58 print("-" * 50)59
60
61 def test3(x, *args, y=0): #傳參數組 想傳幾個就傳幾個 然后以元組方式打包起來
62 print(x) #按位置傳值 相對應的位置就傳給位置參數
63 print(y)64 print(args)65
66
67 test3(1, 3, 4, "5", 9, y=1) #只要用關鍵字賦值,那就就必須放在最后面 原因在最上面
68 print("-" * 50)69
70
71 def test4(x, y=0, **kwargs): #也是傳參數組,不過是用字典包起來
72 print(x)73 print(y)74 print(kwargs) #傳參時用關鍵字賦值,以關鍵字作key
75
76
77 test4(2, y=3, name="xiaofeng", age=20) #注意字典的key不要與默認的形參重名
然后是全局變量,局部變量的區分 草稿如下。。。
1 #!usr/bin/env/ python
2 #-*- coding:utf-8 -*-
3 #Author: XiaoFeng
4
5 global_x = 1 #定義全局變量最好加個global 在最上面定義
6 #事實證明這也不過是個變量,是可以改的 但是咱不改他
7
8
9 deftest():10 x = 3 #局部變量 只在函數內起作用,函數結束就沒了
global global_x # 非要改全局變量 那就先global聲明一下就能改了
global_x = 6
11 print(x)12 print(global_x)13
14
15 test()16 print(global_x)17
18 #遞歸函數 特點是 要有結束條件 問題規模應該減小 效率低
19
20
21 deftest1(n):22 if n >0:23 print(n)24 return test1(int(n/2))25
26
27 test1(20)28
29
30 def test2(a, b, f): #高級函數 就是把函數名傳到函數里用。。。這是要干啥
31 z = f(a) -f(b)32 print(z)33
34
35 test2(4, -8, abs)
作業如下。。。。。。。。真不會寫 頭大
1 #!usr/bin/env/ python
2 #-*- coding:utf-8 -*-
3 #Author: XiaoFeng
4
5
6 defprint_list():7 for index, i inenumerate(list1):8 print(index, i)9
10
11 defsearch(find_str):12 with open("config_test", "r", encoding="utf-8") as f:13 for line inf:14 if find_str ==line:15 line =next(f)16 print(line)17 #while "serve" in line:
18 #line = next(f)
19 #print(line)
20
21 """
22 def add():23 with open("config_test", "a+", encoding="utf-8") as f, \24 open("config_test1", "w+", encoding="utf-8") as f2:25 for line in f:26 if arg[""] == line:27 line = next(f)28 print(line)29 f2.write(line)30 """
31
32
33 list1 = ["search", "add", "update", "delete"]34 whileTrue:35 choice = input("請輸入操作選擇:")36 if choice == "0":37 find_str0 = "backend"+input("請輸入您要查詢的內容:") + "\n"
38 search(find_str0)39 #if choice == "1":
40 #arg = eval(input("請輸入您要寫入的內容:"))
41 #add(arg)
總結
以上是生活随笔為你收集整理的python3 全局变量 局部变量_python3 函数传参练习 全局变量与局部变量 的理解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pythonalert弹窗_python
- 下一篇: python 两阶段聚类_挑子学习笔记: