0401.輸入乙個年份,輸出是否為閏年。#閏年條件:能被4整除但不能被100整除,或者能被400整除的年份都是閏年。
#0401
n = eval(input())
if (n % 4 == 0 and n % 100 != 0) or n % 400 == 0:
print('{}年是閏年'.format(n))
else:
print('{}年不是閏年'.format(n))
0402.最大公約數計算。獲取兩個整數,求出這兩個整數的最大公約數和最小公倍數,最大公約數的計算一般使用輾轉相除法,最小公倍數則使用兩個數的乘積除以最大公約數。
#0402
a,b = input().split()#輸入兩數,以空格隔開
a,b = int(a),int(b)
mul = a*b
e = max(a,b)%min(a,b)#餘數e
#輾轉相除法
while e != 0:
a,b = min(a,b),e
e = max(a,b)%min(a,b)
print("最大公約數是:{} 最小公倍數是:{}"\
.format(min(a,b),int(mul/(min(a,b)))))
0403.統計不同字元個數。使用者從鍵盤鍵入一行字元,編寫乙個程式,統計並輸出其中英文本元、數字、空格和其他字元的個數。
#0403
str1 = input()
n1,n2,n3,n4 = 0,0,0,0
for c in str1:
#中文的漢字會被 isalpha 判定為 true,
#如果想區分中文和英文可以使用 unicode。中文的範圍為:['/u4e00','/u9fa5']
if c.encode('utf-8').isalpha():
n1 += 1
elif c.isdigit():
n2 += 1
elif c.isspace():
n3 += 1
else:
n4 += 1
print("英文本元數:{} 數字數:{} 空格數:{} 其他字元數:{}"\
.format(n1,n2,n3,n4))
0404.猜數遊戲續。當使用者輸入的不是整數(如字母、浮點數等)時,程式會終止執行退出。改編題目1中的程式,當使用者輸入出錯時給出「輸入內容必須為整數!」的提示,並讓使用者重新輸入。
#0404
import random
target = random.randint(1,1000)
count = 0
while true:
try:
guess = eval(input('請輸入乙個猜測的整數(1至1000):'))
a = bin(guess)#避免出現元組、字典、浮點數等型別的的資料
except:
print('輸入內容必須為整數!請重試,本次不計入猜測次數。')
continue
count = count + 1
if guess > target:
print('猜大了')
elif guess < target:
print('猜小了')
else:
print('猜對了')
break
print("此輪的猜測次數是:", count)
0405.羊車門問題。有三扇關閉的門,一扇門後面停著汽車,其餘門後是山羊,只有主持人知道每扇門後面是什麼。參賽者可以選擇一扇門,在開啟它之前,主持人會開啟另外一扇門,露出門後的山羊,然後允許參賽者更換自己的選擇。請問,參賽者更換選擇後能否增加猜中汽車的機會?——這是乙個經典問題。請使用random庫對這個隨機事件進行**,分別輸出參賽者改變選擇和堅持選擇獲勝的概率。
#0405
from random import *
def choices():
nl = [0,1,2]#0,1,2分別對應'羊','羊','汽車'
nl1 = [0,1]#主持人的選擇範圍
cddt = choice(nl)#參賽者的選擇
if cddt == 2:
host = choice(nl1)#主持人開啟的門
else:
nl1.remove(cddt)
host = choice(nl1)
nl.remove(cddt)
nl.remove(host)
return cddt,nl[0]
while true:
n = input("請輸入試驗次數(按q退出):")
if n == 'q':
print("試驗結束!")
break
n = int(n)
count1 = 0#不改變選擇,猜中汽車的次數
count2 = 0#改變選擇,猜中汽車的次數
for i in range(n):
a,b = choices()
if a == 2:
count1 += 1
if b == 2:
count2 += 1
print("堅持選擇獲勝概率:".format(count1/n))
print("改變選擇獲勝概率:".format(count2/n))
第2章程式的基本結構
2.1初始化 使用如下 建立乙個程式例項 from flask import flask 2.2路由和檢視函式 def index return 稱index 為檢視函式,其返回的響應可以是包含html的簡單字串,也可以是複雜的表單。但一般不在python 中嵌入響應字串,因為會導致 難以維護。支援...
第2章 程式的版式
一 空行 1 每個類宣告和函式定義結束之後都要加空行 2 邏輯上密切相關的語句之間不加空行 二 行 1 一行 只做一件事 這在python中顯得尤為重要 2 if for while do等語句獨自佔一行,不論有多少執行語句都要加 3 盡可能在定義變數的同時初始化該變數 三 行內的空格 1 關鍵字之...
3章 程式流程控制
運算子 和 分別是短路和 短路或運算子。if 和 if else 語句用於條件選擇。switch語句由乙個到多個case語句組成。switch語句中的值可以是byte shot int,或 char型別。case語句的值必須是乙個常量表示式或字面量。while迴圈用於重複執行任務。while迴圈體中...