while - 函數

while 循環

  • 一個循環語句
  • 表示到某個條件成立的時候,就循環
  • 不知道具體循環的次數,但能肯定循環的成立條件的時候用while循環
  • while語法:html

    while 條件表達式:
           語句塊
    
       # 另一種表達方法
     while 條件表達式:
            語句塊1
     else:
            語句塊2
In [4]:
 
​x
 
# 若是說年利率是6.7%,本利每一年翻倍,則多少年後本錢會翻倍
benqian = 10000
year = 0
while benqian < 20000:
    benqian = benqian * (1+0.067)
    year += 1 # 指 year = year + 1
    print("第{0}年拿了{1}塊錢".format(year, benqian))
第1年拿了10670.0塊錢
第2年拿了11384.89塊錢
第3年拿了12147.677629999998塊錢
第4年拿了12961.572031209998塊錢
第5年拿了13829.997357301068塊錢
第6年拿了14756.607180240238塊錢
第7年拿了15745.299861316334塊錢
第8年拿了16800.23495202453塊錢
第9年拿了17925.85069381017塊錢
第10年拿了19126.88269029545塊錢
第11年拿了20408.383830545245塊錢
In [5]:
 
 
# 若是拿到的前翻倍,則用 print 語句慶祝一下
benqian = 10000
year = 0
while benqian < 20000:
    benqian = benqian * (1+0.067)
    year += 1 # 指 year = year + 1
    print("第{0}年拿了{1}塊錢".format(year, benqian))
else:
    print("終於能夠娶媳婦了")
    print("找媳婦去了")
第1年拿了10670.0塊錢
第2年拿了11384.89塊錢
第3年拿了12147.677629999998塊錢
第4年拿了12961.572031209998塊錢
第5年拿了13829.997357301068塊錢
第6年拿了14756.607180240238塊錢
第7年拿了15745.299861316334塊錢
第8年拿了16800.23495202453塊錢
第9年拿了17925.85069381017塊錢
第10年拿了19126.88269029545塊錢
第11年拿了20408.383830545245塊錢
終於能夠娶媳婦了
找媳婦去了
 
 
# 函數
 - 代碼的一種組織形式
 - 一個函數通常完成一項特定的功能
 - 函數使用
    - 函數須要先定義
    - 使用函數 稱爲調用

函數

  • 代碼的一種組織形式
  • 一個函數通常完成一項特定的功能
  • 函數使用
    • 函數須要先定義
    • 使用函數 稱爲調用
In [6]:
 
 
# 定義一個函數
# 若是隻定義而不調用這個函數,函數是不會執行的
# 1.def 是個關鍵字,後面跟一個空格
# 2.函數名,本身定義,起名需遵循指令取名規則,約定俗稱,大駝峯只給類用來命名
# 3.後面的括號和冒號不能省略,括號內能夠有參數
# 4.函數內全部代碼都得有縮進
def fun():
    print("函數")
    print("能夠完成一個功能")
    print("再見")
In [9]:
 
 
# 函數的調用
# 直接用函數名和後面跟括號
fun()
函數
能夠完成一個功能
再見
 
 
### 函數的參數和返回值
 - 參數:負責給函數傳遞一些必要的數據和信息
      — 形參(形式參數):在函數定義的時候用到的參數沒有具體值,只是一個佔位符,稱之爲形參
      - 實參(實際參數):在調用函數的輸入的值
 - 返回值:函數的執行結果
       - 返回值使用 return 關鍵字來代表這函數
       - 若是沒有 return 默認返會 None
       - 函數一旦執行 return 語句,則無條件返回,即結束函數執行

函數的參數和返回值

  • 參數:負責給函數傳遞一些必要的數據和信息 — 形參(形式參數):在函數定義的時候用到的參數沒有具體值,只是一個佔位符,稱之爲形參
    • 實參(實際參數):在調用函數的輸入的值
  • 返回值:函數的執行結果
    - 返回值使用 return 關鍵字來代表這函數
    - 若是沒有 return 默認返會 None
    - 函數一旦執行 return 語句,則無條件返回,即結束函數執行
In [11]:
 
 
# 參數的定義和使用
# 參數 person 只是一個符號,表明的是調用時的某一個數據
# 調用的時候,會用 a 代替函數中全部的 person
def hello(person):
    print("{0},你怎麼了".format(person))
    print("sir,你不理我那我走了")
a = "ruirui"
hello(a) 
ruirui,你怎麼了
sir,你不理我那我走了
In [15]:
 
 
# retuyn 語句基本使用
# 函數打完招呼後返回一句話
def hello(person):
    print("{0},你怎麼了".format(person))
    print("sir,你不理我那我走了")
 
           
    return "我已經跟{0}打招呼了,{1}根本不理我".format(person,person)
 
           
a = "ruirui"
rst = hello(a)
print(rst)
ruirui,你怎麼了
sir,你不理我那我走了
我已經跟ruirui打招呼了,ruirui根本不理我
In [17]:
 
 
# return 案例2
def hello(person):
    print("{0},你怎麼了".format(person))
    return "哈哈,我不理你了"
    print("sir,你不理我那我走了")
 
           
    return "我已經跟{0}打招呼了,{1}根本不理我".format(person,person)
a = "ruirui"
rst = hello(a)
print(rst)
ruirui,你怎麼了
哈哈,我不理你了
In [20]:
 
 
# 九九乘法表
# version 1,0
for row in range(1,10):
    # 打印一行
    print("{0}....a line".format(row))
1....a line
2....a line
3....a line
4....a line
5....a line
6....a line
7....a line
8....a line
9....a line
In [39]:
 
 
for row in range(1,10):
    for col in range(1,row+1):
        # print 函數默認任務打印完畢後執行換行
        print( row * col,end=" ")
    print("......") 
1 ......
2 4 ......
3 6 9 ......
4 8 12 16 ......
5 10 15 20 25 ......
6 12 18 24 30 36 ......
7 14 21 28 35 42 49 ......
8 16 24 32 40 48 56 64 ......
9 18 27 36 45 54 63 72 81 ......
In [24]:
 
 
# 查找函數幫助文檔
# 1.用 help 加上函數名
help(print)
Help on built-in function print in module builtins:

print(...)
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
    
    Prints the values to a stream, or to sys.stdout by default.
    Optional keyword arguments:
    file:  a file-like object (stream); defaults to the current sys.stdout.
    sep:   string inserted between values, default a space.
    end:   string appended after the last value, default a newline.
    flush: whether to forcibly flush the stream.

In [48]:
 
 
# 定義一個函數
def printis(row):
    for col in range(1, row+1):
        # print 函數默認任務打印完畢後執行換行
        print( row * col,end=" ")
    print(" ") 
    pass
In [49]:
 
 
# 九九乘法表
# version 2,0
for row in range(1,10):
    printis(row)
1  
2 4  
3 6 9  
4 8 12 16  
5 10 15 20 25  
6 12 18 24 30 36  
7 14 21 28 35 42 49  
8 16 24 32 40 48 56 64  
9 18 27 36 45 54 63 72 81  
 
 
### 參數詳解
 - 【參考資料】(http://www.cnblogs.com/bingabcd/p/6671368.html)(博客園)
 - python 參考資料:headfirst python -->零基礎入門學習python(小甲魚寫的)-->習題-->後期能夠去看免費的公開課跟着練習
 - 參數分類
    - 普通參數
    - 默認參數
    - 關鍵參數
    - 收集參數
- 普通參數
  - (參見上面的例子)
  - 在定義的時候直接定義變量名
  - 調用的時候直接把變量或值放入指定位置
  
  
                 def 函數名 (參數1....參數2,.....):
                     函數體
                     
                  # 調用
                  函數名 (value1, value2.....)之會按位置調用
                  
                  # 調用的時候,具體值參考的時位置,按位置賦值
                  
  - 默認參數
      - 形參帶有默認值
      - 調用的時候,若是沒有對相應的參數值,則會使用默認參數值
      
      
            def funt name(p1=v1, p2=v2......):
                 funt_block
                 
               # 調用2
               valut1= 100
               valut2= 200
               funt_name(valut1,valut2)

參數詳解

  • 參數分類
    • 普通參數
    • 默認參數
    • 關鍵參數
    • 收集參數
      • 普通參數
      • (參見上面的例子)
      • 在定義的時候直接定義變量名
      • 調用的時候直接把變量或值放入指定位置
def 函數名 (參數1....參數2,.....):
                 函數體

              # 調用
              函數名 (value1, value2.....)之會按位置調用

              # 調用的時候,具體值參考的時位置,按位置賦值
  • 默認參數
    • 形參帶有默認值
    • 調用的時候,若是沒有對相應的參數值,則會使用默認參數值
def funt name(p1=v1, p2=v2......):
             funt_block

           # 調用2
           valut1= 100
           valut2= 200
           funt_name(valut1,valut2)
In [55]:
 
 
# 默認參數示例
#報名參數,需知學生性別
#學習 python 的學院基本都是男的,全部,報名的的時候若是沒有特殊指定,就默認是男的
def reg(name, age, gender="male"):
    if gender == "male":
       print("{0} is {1}, and he is a good student".format(name,age))
    else:
        print("{0} is {1}, and she is a good student".format(name,age))
In [56]:
 
 
# 調用默認參數值案例
reg("ruirui",21)
reg("ruiuri",21,"female")
ruirui is 21, and he is a good student
ruiuri is 21, and she is a good student
In [ ]:
相關文章
相關標籤/搜索