20210602 start
5字回文——% //方法
break continue 循環(huán)跳出 原理or標(biāo)志點(diǎn)是什么
梳理這幾種高級(jí)數(shù)據(jù)類(lèi)型的? 循環(huán)、增加抡秆、刪除等操作鼎姊,用 表格方式 列清楚
再看看 打印符號(hào)怎么換行(print('i\n')?
案例——翻轉(zhuǎn)數(shù)字
#翻轉(zhuǎn)數(shù)字
# 地板除與取余法結(jié)合
#跟幾位數(shù)沒(méi)關(guān)系织中,都能reverse過(guò)來(lái)抚笔,其實(shí)本題并不是真正
#【回文】,其實(shí)是reverse的另類(lèi)練習(xí)——將循環(huán)请琳、地板除粱挡、取余結(jié)合
a=int(input('sth<5\n'))
while a!=0:? ? #剩下個(gè)位數(shù)時(shí),余數(shù)能輸出俄精,地板除=0
? ? print(a%10,end="")? # 空字符询筏,""
? ? a=a//10
#媽呀,想通了之后簡(jiǎn)直簡(jiǎn)單得要si
'''
# 1錯(cuò)誤代碼——一開(kāi)始也可以竖慧,發(fā)現(xiàn)余數(shù)是0的時(shí)候就不對(duì)
while a%10!=0:
? ? print(a%10,end="")
? ? a=a//10
#錯(cuò)誤2
while a//10!=0:?
#最后個(gè)位數(shù)因?yàn)榈匕宄?嫌套,所以不能輸出
? ? print(a%10,end="")
? ? a=a//10
'''
#就這么兩行代碼就完事了。圾旨。踱讨。
收獲
想明白了之后——主要是 真正找到規(guī)律了之后——其實(shí)非常簡(jiǎn)單——幾行代碼
但是這里還是有一些陷阱的——就是條件判斷這里,% // !=0 砍的,當(dāng)舉例中沒(méi)有0時(shí)痹筛,好像沒(méi)有問(wèn)題,但其實(shí)是有問(wèn)題的——找到真正對(duì)的方法
方法想明白后挨约,其實(shí)幾個(gè)字不是限制味混,而且也不是嚴(yán)格的【回文】产雹,而是【reverse】——原來(lái)是我一直記錯(cuò)诫惭,人家就叫【翻轉(zhuǎn)數(shù)字】
案例——打印素?cái)?shù)
#打印素?cái)?shù)
# 思路1— 如果一個(gè)數(shù)能被1、比自己小的數(shù)蔓挖、自己整除夕土,就是素?cái)?shù)
20210602也不對(duì),1不應(yīng)該出現(xiàn)的——檢查錯(cuò)誤
end=int(input('some num\n'))
for i in range(1,end+1): # 注意終點(diǎn)是否包含
? ? c=0 # 注意計(jì)數(shù)器何時(shí)清零瘟判,是用來(lái)判斷一個(gè)數(shù)內(nèi)部的怨绣,所以數(shù)字更新-計(jì)數(shù)器更新
? ? for j in range(0,i): # 這段循環(huán)是基于——一個(gè)數(shù)能否被比自己小的數(shù)整除,若能 則非素?cái)?shù)
? ? ? ? if? i%(j+1)==0:
? ? ? ? ? ? c+=1
? ? if c<3: # 接著j的循環(huán),c大小來(lái)斷定是否能被其他數(shù)字整除
? ? ? ? print('{}\n'.format(i))
? ? ? ? # print(i,'\n') 兩種都可以拷获,這種簡(jiǎn)潔些
# 思路2——自身和1不用算篮撑,被中間數(shù)能整除,就不是素?cái)?shù)
# 20210602不對(duì)10以內(nèi)素?cái)?shù)匆瓜,3579赢笨,9不應(yīng)在其中——找錯(cuò)誤點(diǎn)
a=int(input('sth\n'))
for i in range(1,a+1):
? ? for j in range(2,i): # 1和本身都不需要判斷了未蝌,減少預(yù)算
? ? ? ? if i%j==0: # 能被整除 不符合 直接跳出
? ? ? ? ? ? break
? ? ? ? else:
? ? ? ? ? ? print(i)
? ? ? ? ? ? break? # 很關(guān)鍵,沒(méi)有能整除的茧妒,就是素?cái)?shù)萧吠,打出,跳出循環(huán)
思路3——左右區(qū)間(天地)——沒(méi)太明白原理——再琢磨
收獲
print('{}\n'.format(i))——當(dāng)需要打印i時(shí)桐筏,又想再換行時(shí)纸型,目前通過(guò){}.format 方法可以 i\n不行
print(i,'\n')——也可以 打出同樣效果——這種可能更樸素一些,'\n'單純就是換行梅忌,前面可以直接放要打印的參數(shù)
進(jìn)一步明確了 i和j 各司其職狰腌,各自關(guān)系,比大學(xué)時(shí)候的內(nèi)部嵌套明白了很多——現(xiàn)在想來(lái)當(dāng)時(shí)還是沒(méi)學(xué)透
20210602 end
收獲
reverse——翻轉(zhuǎn)數(shù)字怎么做——除了reverse函數(shù)偷懶做法铸鹰,再底層些——// %地板除和取余相結(jié)合的方法
找到規(guī)律癌别,想明白原理后,其實(shí)問(wèn)題就變簡(jiǎn)單了蹋笼,幾行代碼就解決了
以為解決了的問(wèn)題展姐,有時(shí)候不過(guò)是沒(méi)有遇到全例,就是舉例驗(yàn)證得有些特殊剖毯,導(dǎo)致誤以為自己對(duì)了
注意00 數(shù)字中間這類(lèi)例子圾笨,驗(yàn)證一些內(nèi)容比較有用
每天的思路都不一樣,很難想的事情過(guò)一天可能才思敏捷逊谋,以前明白的方法現(xiàn)在反而會(huì)想不出甚至不能理解——所以多看擂达、開(kāi)闊思路,多接觸胶滋,多反思——這樣能幫助自己學(xué)透板鬓,而不是碰巧就做對(duì)了,做會(huì)了
素?cái)?shù)練習(xí) 訓(xùn)練了 循環(huán)嵌套究恤,比大學(xué)時(shí)候理解得透徹了一些俭令,但也許還不夠透徹到底哈哈,而且?guī)追N方法相互驗(yàn)證結(jié)果不對(duì)部宿,在哪里出現(xiàn)問(wèn)題還需要進(jìn)一步比較判斷
今日目標(biāo)
5字回文——% //方法
break continue 循環(huán)跳出 原理or標(biāo)志點(diǎn)是什么——在練習(xí)中接觸了一點(diǎn)抄腔,但是講得比較模糊,定義不夠清晰
梳理這幾種高級(jí)數(shù)據(jù)類(lèi)型的? 循環(huán)理张、增加赫蛇、刪除等操作,用 表格方式 列清楚
再看看 打印符號(hào)怎么換行(print('i\n')?
接下來(lái)
打印素?cái)?shù)雾叭,方法糾錯(cuò)悟耘,(天地)思路再理解
break continue 循環(huán)跳出——這回應(yīng)該要看到了——清晰界定