Python基礎(chǔ)總結(jié)(三)(選擇来颤、循環(huán))

To the world you may be one person, but to one person you may be the world.


可以使用int將布爾值轉(zhuǎn)換為整數(shù)

int(true) = 1

int(false) = 0

可以使用bool函數(shù)將數(shù)字值轉(zhuǎn)換成布爾值

bool(0) = false

bool(4) = true

隨機(jī)數(shù)

函數(shù)randint(a, b) 可以用來產(chǎn)生一個(gè)a和b之間且包含a和b的隨機(jī)整數(shù)福铅,此函數(shù)在random模塊中滑黔。

函數(shù)randrange(a, b)產(chǎn)生一個(gè)在a环揽、b-1之間的隨機(jī)數(shù)歉胶,等同于randint(a, b - 1)

函數(shù)random() ?產(chǎn)生一個(gè)0<=r<=1.0的隨機(jī)浮點(diǎn)數(shù)r(不包括1.0)

給出一個(gè)好玩的例子;計(jì)算生日日期(數(shù)學(xué)原理這里就不講了粥谬,想知道的給我留言:))


#計(jì)算生日日期

day =0

question1 ="你的生日日期在這里面么?\n"+ \

"1 3 5 7\n"+ \

"9 11 13 15\n"+ \

"17 19 21 23\n"+ \

"25 27 29 31\n"+ \

"請(qǐng)輸入0代表沒有漏策,輸入1代表有"

answer =eval(input(question1))

ifanswer ==1:

day +=1

question2 ="你的生日日期在這里面么?\n"+ \

"2 3 6 7\n"+ \

"10 11 14 15\n"+ \

"18 19 22 23\n"+ \

"26 27 30 31\n"+ \

"請(qǐng)輸入0代表沒有臼氨,輸入1代表有"

answer =eval(input(question2))

ifanswer ==1:

day +=2

question3 ="你的生日日期在這里面么?\n"+ \

"4 5 6 7\n"+ \

"12 13 14 15\n"+ \

"20 21 22 23\n"+ \

"28 29 30 31\n"+ \

"請(qǐng)輸入0代表沒有储矩,輸入1代表有"

answer =eval(input(question3))

ifanswer ==1:

day +=4

question4 ="你的生日日期在這里面么?\n"+ \

"8 9 10 11\n"+ \

"12 13 14 15\n"+ \

"24 25 26 27\n"+ \

"28 29 30 31\n"+ \

"請(qǐng)輸入0代表沒有,輸入1代表有"

answer =eval(input(question4))

ifanswer ==1:

day +=8

question5 ="你的生日日期在這里面么?\n"+ \

"16 17 18 19\n"+ \

"20 21 22 23\n"+ \

"24 25 26 27\n"+ \

"28 29 30 31\n"+ \

"請(qǐng)輸入0代表沒有抑月,輸入1代表有"

answer =eval(input(question5))

ifanswer ==1:

day +=16

print("\n你的生日日期是:"+str(day) +"!")


運(yùn)算符的優(yōu)先級(jí)(從高到低)

+谦絮,- (一元加減運(yùn)算符)

** (指數(shù)運(yùn)算符)

not

*层皱、/赠潦、 //、% (乘瓮增、除、整除拳恋、余數(shù))

+砸捏、- (二元加減)

<、<= 梆暖、>轰驳、>= (比較)

==芭挽、!=(相等運(yùn)算符)

and

or

=、+=袜爪、-=、*=俺陋、/=腊状、//=、%=(賦值運(yùn)算符)

??注意在循環(huán)中不要使用浮點(diǎn)數(shù)值來比較相等作為控制條件缴挖,因?yàn)楦↑c(diǎn)數(shù)運(yùn)算是近似的映屋。如下例子:

#這個(gè)程序看著挺正常的同蜻,但是其實(shí)會(huì)一直運(yùn)行在循環(huán)中,因?yàn)閣hile item !=0這個(gè)判斷條件是不成立的

item=1

sum =0

while item !=0:

? ? ? ? item -=0.1

? ? ? ? sum+= item

print(sum)

那么遇到這種情況的話瘫析,可以考慮是用for循環(huán)或者使用一個(gè)整數(shù)計(jì)數(shù)來充當(dāng)哨兵值解決這個(gè)問題。

輸入輸出重定向


推薦學(xué)習(xí)博客:

http://www.cnblogs.com/turtle-fly/p/3280519.html


將輸出重定向到out.log文件咸包,同時(shí)也在控制臺(tái)(屏幕)打印

import sys

class__redirection__:

def__init__(self):

self.buff =''

self.__console__ = sys.stdout

defwrite(self, output_stream):

self.buff += output_stream

defto_console(self):

sys.stdout =self.__console__

print(self.buff)

defto_file(self, file_path):

f =open(file_path,'w')

sys.stdout = f

print(self.buff)

f.close()

defflush(self):

self.buff =''

defreset(self):

sys.stdout =self.__console__

if__name__ =="__main__":

# redirection

r_obj = __redirection__()

sys.stdout = r_obj

# get output stream

print('hello')

print('there')

# redirect to console

r_obj.to_console()

# redirect to file

r_obj.to_file('out.log')

# flush buffer

r_obj.flush()

# reset

r_obj.reset()

for循環(huán)

for v in range(4,8):

print(v)

結(jié)果是:4诉儒,5,6泛释,7

其中,range函數(shù)有多種形式间影,如:range(a) ?與range(0, a)功能一樣茄茁,range(a, b, k)中k代表步長,k也可以是負(fù)數(shù)付燥。但是range中的數(shù)必須為整數(shù)键科。

求最大公約數(shù)

#歐幾里得算法求最大公約數(shù)

#遞歸

def Gcd(a, b):

if b ==0:

returna

return Gcd(b, a % b)

print(Gcd(2,4))

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末勋颖,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子饭玲,更是在濱河造成了極大的恐慌茄厘,老刑警劉巖徒恋,帶你破解...
    沈念sama閱讀 222,378評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件入挣,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡葛假,警方通過查閱死者的電腦和手機(jī)聊训,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,970評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門带斑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人勋磕,你說我怎么就攤上這事挂滓。” “怎么了赶站?”我有些...
    開封第一講書人閱讀 168,983評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵想括,是天一觀的道長烙博。 經(jīng)常有香客問我,道長习勤,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,938評(píng)論 1 299
  • 正文 為了忘掉前任夷都,我火速辦了婚禮予颤,結(jié)果婚禮上蛤虐,老公的妹妹穿的比我還像新娘。我一直安慰自己刑顺,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,955評(píng)論 6 398
  • 文/花漫 我一把揭開白布狼讨。 她就那樣靜靜地躺著政供,像睡著了一般朽基。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上执泰,一...
    開封第一講書人閱讀 52,549評(píng)論 1 312
  • 那天,我揣著相機(jī)與錄音茸苇,去河邊找鬼沦寂。 笑死,一個(gè)胖子當(dāng)著我的面吹牛腻暮,可吹牛的內(nèi)容都是我干的毯侦。 我是一名探鬼主播侈离,決...
    沈念sama閱讀 41,063評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼卦碾,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了济榨?” 一聲冷哼從身側(cè)響起绿映,我...
    開封第一講書人閱讀 39,991評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎赴魁,沒想到半個(gè)月后钝诚,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體颖御,經(jīng)...
    沈念sama閱讀 46,522評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,604評(píng)論 3 342
  • 正文 我和宋清朗相戀三年芦岂,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了禽最。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片川无。...
    茶點(diǎn)故事閱讀 40,742評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡懦趋,死狀恐怖疹味,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情诫咱,我是刑警寧澤遂跟,帶...
    沈念sama閱讀 36,413評(píng)論 5 351
  • 正文 年R本政府宣布幻锁,位于F島的核電站边臼,受9級(jí)特大地震影響柠并,放射性物質(zhì)發(fā)生泄漏富拗。R本人自食惡果不足惜鸣戴,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,094評(píng)論 3 335
  • 文/蒙蒙 一啃沪、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧窄锅,春花似錦创千、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,572評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至疏之,卻和暖如春殿雪,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背锋爪。 一陣腳步聲響...
    開封第一講書人閱讀 33,671評(píng)論 1 274
  • 我被黑心中介騙來泰國打工丙曙, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人其骄。 一個(gè)月前我還...
    沈念sama閱讀 49,159評(píng)論 3 378
  • 正文 我出身青樓亏镰,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,747評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • 燈火闌珊菊花黃崎坊, 天高云淡秋水長奈揍; 窗含盈霜笛聲遠(yuǎn)另患, 風(fēng)輕搖枝桂影香鸦列。
    金永輝煌閱讀 882評(píng)論 4 8
  • 這些天幾乎每晚都1點(diǎn)多才睡早上又6點(diǎn)多起床骆姐,其實(shí)不用弄那么晚的就是自己控制不好多看一會(huì)手機(jī)這一惡習(xí)诲锹。看手機(jī)又不是和...
    承思而行閱讀 176評(píng)論 0 0
  • 概述 隨機(jī)算法是當(dāng)前工業(yè)界和學(xué)術(shù)界都比較熱的一個(gè)話題晤揣,從機(jī)器學(xué)習(xí)钠四、數(shù)據(jù)挖掘到現(xiàn)在熱得發(fā)燙的深度學(xué)習(xí),無一沒有隨機(jī)算...
    CodingTech閱讀 1,084評(píng)論 0 3
  • 【月末淺留】 屬于四月的人間天 仿如流水般 悄然離去 五月的鐘聲開始啟動(dòng) 燕兒的翅膀 在晨間展動(dòng)起來 窗外那些落葉...
    天佑居士閱讀 148評(píng)論 0 0