1. 程式人生 > >python邏輯控制

python邏輯控制

#!/usr/bin/python
#encoding=utf8
 
#while迴圈
# Fibonacci series: 斐波納契數列
# 兩個元素的總和確定了下一個數
a, b = 0, 1
while b < 10:
    print(b)
    a, b = b, a+b


#if判斷
age = int(input("請輸入你家狗狗的年齡: "))
print("")
if age < 0:
    print("你是在逗我吧!")
elif age == 1:
    print("相當於 14 歲的人。")
elif age == 2:
    print("相當於 22 歲的人。")
elif age > 2:
    human = 22 + (age -2)*5
    print("對應人類年齡: ", human)    


### 退出提示
#input("點選 enter 鍵退出")


# 該例項演示了數字猜謎遊戲
number = 7
guess = -1
print("數字猜謎遊戲!")
while guess != number:
    guess = int(input("請輸入你猜的數字:"))
 
    if guess == number:
        print("恭喜,你猜對了!")
    elif guess < number:
        print("猜的數字小了...")
    elif guess > number:
        print("猜的數字大了...")


num=int(input("輸入一個數字:"))
if num%2==0:
    if num%3==0:
        print ("你輸入的數字可以整除 2 和 3")
    else:
        print ("你輸入的數字可以整除 2,但不能整除 3")
else:
    if num%3==0:
        print ("你輸入的數字可以整除 3,但不能整除 2")
    else:
        print  ("你輸入的數字不能整除 2 和 3")


# while 來計算 1 到 100 的總和:
n = 100
 
sum = 0
counter = 1
while counter <= n:
    sum = sum + counter
    counter += 1
 
print("1 到 %d 之和為: %d" % (n,sum))


var = 1
while var == 1 :  # 表示式永遠為 true
   num = int(input("輸入一個數字  :"))
   print ("你輸入的數字是: ", num)
 
print ("Good bye!")


#for 例項中使用了 break 語句,break 語句用於跳出當前迴圈體
sites = ["Baidu", "Google","Runoob","Taobao"]
for site in sites:
    if site == "Runoob":
        print("菜鳥教程!")
        break
    print("迴圈資料 " + site)
else:
    print("沒有迴圈資料!")
print("完成迴圈!")


for letter in 'Runoob':     # 第一個例項
   if letter == 'b':
      break
   print ('當前字母為 :', letter)
  
var = 10                    # 第二個例項
while var > 0:              
   print ('當期變數值為 :', var)
   var = var -1
   if var == 5:
      break
 
print ("Good bye!")


for n in range(2, 10):
    for x in range(2, n):
        if n % x == 0:
            print(n, '等於', x, '*', n//x)
            break
    else:
        # 迴圈中沒有找到元素
        print(n, ' 是質數')


'''
pass 語句
Python pass是空語句,是為了保持程式結構的完整性。
pass 不做任何事情,一般用做佔位語句,如下例項
'''
for letter in 'Runoob': 
   if letter == 'o':
      pass
      print ('執行 pass 塊')
   print ('當前字母 :', letter)
 
print ("Good bye!")


#list迭代器有兩個基本的方法:iter() 和 next()。


list=[1,2,3,4]
it = iter(list)    # 建立迭代器物件
for x in it:
    print (x)


import sys         # 引入 sys 模組
 
list=[1,2,3,4]
it = iter(list)    # 建立迭代器物件
 
while True:
    try:
        print (next(it))
    except StopIteration:
        sys.exit()


def fibonacci(n): # 生成器函式 - 斐波那契
    a, b, counter = 0, 1, 0
    while True:
        if (counter > n): 
            return
        yield a
        a, b = b, a + b
        counter += 1
f = fibonacci(10) # f 是一個迭代器,由生成器返回生成
 
while True:
    try:
        print (next(f))
    except StopIteration:
        sys.exit()
# 計算面積函式
def area(width, height):
    return width * height
 
def print_welcome(name):
    print("Welcome", name)


print_welcome("Runoob")
w = 4
h = 5
print("width =", w, " height =", h, " area =", area(w, h))