python里、能用分支结构写出循环的算法吗_python变量运算符分支结构循环结构及例题...
第一周總結復習
python的[官方網站](http://python.org)
##變量
'''
1.變量的作用:變量是數據的載體
2.變量的命名:字母數字下劃線開頭,不能用數字開頭
不能用關鍵字,特殊符號 $等開頭
大小寫敏感(a 和 A 不一樣)
PEP 8 要求:
用小寫字母拼寫,多個單詞用下劃線隔開
受保護的實例屬性用單個下劃線開頭
私有的實例屬性用兩個下劃線開頭
3.變量的類型: int(),float(),str(), chr(), ord()--將字符串轉化成對應的編碼
'''
##運算符
'''
1.賦值運算符: =(賦值)、+=(加賦值)、-=(減賦值)、*=(乘賦值)、/=(除賦值)、%=(取余賦值)
2.算數運算符: +、-、*、/、%
3.關系運算符: ==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)
4.邏輯運算符:and(與)、or(或)、not(非)
5.身份運算符
'''
##分支結構
'''
'''
##循環結構
'''
1.while循環:只要某一條件成立,就不斷執行循環體里的代碼,直到該條件不再成立,條件是否成立同樣是邏輯值來表示
2.for循環:循環的循環次數一般是事先定好的,將一個條件變量從某個豈是值開始,一直爹逮到某個終止值后結束
循環控制--pass:什么也不做,只是占據一行代碼的位置;
continue:表示立即退出本輪循環,不運行本輪循環的后續代碼,并繼續執行接下來的循環;
break: 表示立即退出整個循環,后續循環不再執行
'''
python例題練習:(所有代碼在python3.5環境下可運行)
1.輸入三個數字,計算三角形面積周長:
importmath
a= float(input("請輸入三角形邊第一條邊長:"))
b= float(input("請輸入三角形邊第二條邊長:"))
c= float(input("請輸入三角形邊第三條邊長:"))whileTrue:if a + b > c and a + c > b and b + c >a:
perimeter= a + b +c
p= perimeter / 2g= math.sqrt(p * (p - a) * (p - b) * (p -c))print("三角形周長為:%.2f" %perimeter)print("三角形面積為: %.2f" %g)else:print("-------------This is not triangle!!----------------")break
2.用戶輸入數字,由電腦來猜:
from random importrandint
user_input= int(input("please input the number you want computer guess>>>:"))
counter=0
low= 1high= 100money= 1000
whileTrue:
guess=randint(low, high)print(guess)
counter+= 1
if user_input ==guess:print("congratulation, computer guess right")print("total guess:", counter)
money+= 200
print("computer has:",money)if money < 500:print("computer you are fucking stupid!!!!")
quit()elif user_input >guess:
low= guess + 1
print("computer guess a higher number")
money-= 100
else: #user_input < guess
high = guess - 1
print("computer guess a lower number:")
money-= 100
3.和電腦猜石頭剪刀布:
from random importrandintwhileTrue:
user_guess=int(input("1-- scisoor, 2--stone, 3--handkerchief:"))
cm_guess= randint(1, 3)print(cm_guess)if user_guess ==cm_guess:print("no one lose")elif user_guess == 1 and cm_guess == 2:print("user win")elif user_guess == 2 and cm_guess == 3:print("computer win")elif user_guess == 3 and cm_guess == 2:print("user win")else: #user_guess == 3 and cm_guess == 1:
print("computer win")
4. 打印(2,100)所有素數
importmathdefget_prime(maxNum):
primeList=[]for x in range(2, maxNum + 1):
a=math.sqrt(x)for prime inprimeList:if prime >a:
primeList.append(x)break
if x % prime ==0:break
else:
primeList.append(x)returnprimeListprint(get_prime(100))
5. 打印 '*'
row = int(input("please input the number of row:>>>>>"))for i inrange(row):for j inrange(row):if j < row - i - 1:print(' ', end = '')else:print('*', end = '')print()
6. 打印三角形的大寫字母,每行的字母一樣:
for x in range(65, 70):for y in range(64, x):print(chr(x), end = '')print()
7. 找出1-10000的水仙花數:
from time import time
from math import sqrt
start = time()
for n in range(1, 10000):
my_sum = 0
for factor in range(1,int(sqrt(n)) + 1):
if n % factor == 0:
my_sum += factor
if factor != 1 and factor != n // factor:
my_sum += n // factor
if my_sum == n:
print(n)
end = time()
print((end - start), 's')
8. 五人抓魚問題:A把魚分成五份后扔走一條拿走自己那部分,BCDE用和A一樣方法分魚,求魚一共有多少條(本題使用窮舉法):
fish = 1
whileTrue:
total=fish
is_enough=Truefor _ in range(5):if (total - 1) % 5 ==0:
total= (total - 1) // 5 * 4
else:
is_enough=Falsebreak
ifis_enough:print("the min number of fish is:", fish)breakfish+= 1
9. craps 賭博游戲
# craps 賭博游
from random import randint
money = 1000
while money > 0:
print('players money:', money)
while True:
debt = int(input('please debt:'))
if 0 < debt <= money:
break
face1 = randint(1, 6)
face2 = randint(1, 6)
go_on = False
first_point = face1 + face2
print('玩家搖出了%d點' %first_point)
if first_point == 7 or first_point == 11:
print(" you win!")
money += debt
print("user have: %d" % money)
elif first_point == 2 or first_point == 3 or first_point == 12:
print(" computer win!")
money -= debt
print("user have: %d" % money)
else:
go_on = True
while go_on:
face1 = randint(1, 6)
face2 = randint(1, 6)
current_point = face2 + face1
print('玩家搖出了%d點' % current_point)
if current_point == 7:
print("user lose!")
money -= debt
go_on = False
print("user have: %d" % money)
elif current_point == first_point:
print("user win!")
money += debt
go_on = False
print("user have: %d" %money)
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的python里、能用分支结构写出循环的算法吗_python变量运算符分支结构循环结构及例题...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 镁光硬盘测试软件,镁光固态硬盘评测[通俗
- 下一篇: websocket python爬虫_p