基礎很簡單卻非常重要,需要很熟練掌握,在看下面例子之前也可以先了解下以前的兩篇文章,都是很基礎的,也是初學者必須掌握的一些東西,
Python基礎知識匯總
https://blog.csdn.net/weixin_41896770/article/details/100099990
Python對命令提示符cmd以及作業系統的一些操作
https://blog.csdn.net/weixin_41896770/article/details/102626596 實體比較多,使用目錄的形式來展示,也是第一次使用這個編輯器的目錄😄
目錄
1、乘法口訣表
2、100以內的奇數和
3、判斷是否是閏年
4、猜數字游戲
5、判斷日期是當年的第幾天
6、斐波拉契數列(1 1 2 3 5 8 13 21 34 55 89 144 233)
1、乘法口訣表
很簡單,就是兩個回圈的乘積輸出,其中需要注意格式,format的使用,其次就是每個內回圈后面加個制表符,內回圈回圈完畢加個空行
for i in range(1,10):
for j in range(1,i+1):
print("{0}*{1}={2}".format(j,i,i*j),end='\t')
print(' ')

2、100以內的奇數和
for回圈:
s=0
for i in range(1,100):
if(i%2==1):
s+=i
print(s)#2500
while回圈:
s=0
n=1
while n<100:
s+=n
n+=2
print(s)
遞回[三個條件]:
1.有結束條件
2.向結束條件推進
3.自己呼叫自己
def s(n):
if(n<=0):
return 0
else:
return(s(n-2)+n)#奇數與奇數之間相差2
s(9)#25,從9開始遞減
最后是最便捷的方法,指定range的步長,再使用內置sum函式求和
print(sum(range(1,100,2)))
3、判斷是否是閏年
閏年分普通閏年和世紀閏年,閏年大家都知道,能被4整除就是的,而普通閏年是能被4整除且不能被400整除,世紀閏年就是能被400整除,其余就是非閏年
def isLeapYear(y):
if y%4==0 and y%100!=0:
print(f"{y}年是普通閏年")
elif y%400==0:
print(f"{y}年是世紀閏年")
else:
print(f"{y}年不是閏年")
4、猜數字游戲
隨機生成1~10的數字,猜錯了游戲就結束!
import random as rd
def guessNum(n):
'''
猜數字游戲
n:猜數字的次數
'''
v=rd.randint(1,10)
for i in range(n):
p='請輸入一個整數:'if i==0 else '錯誤,請繼續猜:'
try:
gn=int(input(p))
if gn==v:
print('猜對了')
break
elif gn>v:
print('猜的數字大了')
else:
print('猜的數字小了')
except:
print('請輸入整數!')
else:
print('猜錯了,正確答案是:',v)
5、判斷日期是當年的第幾天
def getDays(y):
m=int(input('輸入月份:'))
d=int(input('輸入日數:'))
m_pdays=[0,31,59,90,120,151,181,212,243,273,304,334]#每月之前天數
sumDays=m_pdays[m-1]
sumDays+=d#之前天數加上當月的天數
#閏年在2月份之后的每個月需要多加一天
leap=False
if y%4==0 and y%100!=0 or y%400==0:
leap=True
if m>2 and leap==True:
sumDays+=1
return sumDays

6、斐波拉契數列(1 1 2 3 5 8 13 21 34 55 89 144 233)
也叫做“兔子數列”,由兔子繁殖的數量得來,第三項資料開始,等于前兩項的和
for回圈:
def fib(n):
x1,x2=0,1
for i in range(n+1):
x1,x2=x2,x1+x2
return x1
for i in range(20):
print(fib(i),end=' ')
其中需要注意x1,x2=x2,x1+x2不能等價于x1=x2,x2=x1+x2
x1=x2,x2=x1+x2在計算x1+x2的值的時候,x1已經被賦值為x2了,這樣x2的值其實是x2+x2
x1,x2=x2,x1+x2這個就是先計算x1+x2的值,再賦值給x2,此時的x1還是x1
遞回:
def fib(n):
if n<=2:
return 1
return fib(n-1)+fib(n-2)
for i in range(1,11):
print(fib(i),end=' ')
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/340557.html
標籤:其他
上一篇:使用JAVA實作對游戲《植物大戰僵尸》游戲資料進行修改
下一篇:c語言實作簡單的命令列掃雷游戲
