Python Day 7

回顧:

字符串

編碼轉換

ord(x)

chr(x)

整數轉字符串的函數:

hex(i)

oct(i)

bin(i)

字符串的構造(創建)函數

str(x)

int(x)

bool(x)

float(x)

complex(x)

while語句

day06:

for 語句:

for 語句用來遍歷(每個對象能夠查看并只查看一遍)序列或可迭代對象的每一個元素

可迭代對象是指有多個數據組合在一起的對象

包括:

字符串? ? str

-------以后后邊會學--------

列表? ? ? list

元祖? ? ? tuple

字典? ? ? dict

集合? ? ? set

固定集合? frozenset

生成器等

for 的語法

for 變量列表? in 可迭代對象或生成器:

語句1

.....

else:

語句2

.....

示例:

s = 'hello'

for ch in s:

print(ch)

else:

print('對象不能再提供數了,結束')

語法說明:

1.變量依次用可迭代對象的每次給出的元素依次賦值,然后執行語句

2.可迭代對象迭代完所有的元素后,執行else子句部分語句后退出循環

3.else子句部分可以省略(同while語句類似)

4. 語句1的執行次數與可迭代對象的元素個數有關

5.當在循環內部用break終止循環時,else子句部分語句不會執行

for? 練習:

任意輸入一段字符串:

計算出輸入字符'a'的個數,并打印出個數

計算出空格的個數,并打印個數

(不能使用S.count方法)

思考:

用while語句能否實現上述功能

x = input('請輸入一段字符:')

i = 0

space = 0

for y in x:

if y == 'a':

i += 1

elif y ==" ":

space += 1

print('輸入的a的數量為:',i,'輸入空格的數量:',space)

range()函數:

格式

rang(stop)? 從零開始,每次生成一個整數后加一操作,直到stop為止(不包含stop)

range(start,stop[,step])從start開始,每次生成一個整數后移動step,直到stop為止(不包含stop,且stop可以是負數)

作用:

用來生成一個可迭代的是、整數序列生成器對象

示例:

range(4)? #生成 0 1 2 3

range(-100)#生成空  因為是從0 開始

range(3,6) #3.4.5

range(1,10,2) #1 3 5 7 9

示例練習:

用for語句打印1-20,打印在1行內

for i in range(1,21):

if i == 20:

print(i)

else:

print(i,end= ' ')

練習:

1.輸入一個字符串,從尾向頭輸出這個字符串的字符

如:

#python3? ....py

請輸入:hello

o

l

l

e

h

思考:用while能不能實現?

s = input('請輸入字符串:')

for i in range(len(s)-1,-1,-1):

print(s[i])

s = input('請輸入字符串:')

for x in s[::-1]:

print(x)

s = input('請輸入字符串:')

index = len(s)-1

while index >= 0:

print(s[index])

index = index - 1

練習:

1.計算1+3+5+7+...+99的和

# s = 0

# for y in range(1,100,2):

#? ? if y < 100:

#? ? ? ? s = s + y

# print(s)

# x = int(input('請輸入一個數,來計算該數以內全部數字之和'))

# s = 0

# for y in range(1,x):

#? ? if y < 100:

#? ? ? ? s = s + y

# print(s)

# x = int(input('請輸入一個數,來計算該數以內全部數字之和'))

# s = 0

# for y in range(1,x,2):

#? ? if y < 100:

#? ? ? ? s = s + y

# print(s)

x = 1

a = 0

while x < 100:

a += x

x += 2

print(a)

for 語句的嵌套

指for語句內含有for語句

例:

for x in 'ABC':

for y in '123':

print(x + y)

for shi in range(1,10):

for ge in range(10):

print(shi * 10 + ge)

內部循環先走,走完在走外邊的循環

思考:打印如下矩形

12345

23456

34567

45678

56789

n = int(input('請輸入一個數:'))

#? begin = 1

#? 用外重循環來控制打印的行數,同時改變開始值begin

for begin in range(1,n + 1):

# 打印其中一行,begin為行的開始值

for x in range(begin,begin + n):

print(x,end='')

print()

用while語句打印1,3,5,7,...,19

將上題用for語句來實現

a = 1

while a <= 20:

print(a,end=' ')

a += 2

for x in range(1,20,2):

print(x)

continue? 語句:

作用:

用于循環語句中(while,for語句)中,不再執行本次循環內chontinue之后的語句,重新開始一次新的循環

例:

for x in range(10):

if x == 3:

continue

print(x)

示例:

打印10 以內的整數:

for x in range(10):

while示例:

x = 0

while x < 10:

if x ==3:

continue

print(x)

x += 1

從新開始之前記得改變循環變量!!!!

示例:

# 打印10以內的偶數:

用while循環跳過奇數實現

x = 1

while x <= 10:

if x % 2 == 1:

x += 1

continue

print(x)

x += 1

continue語句說明

在while語句中執行continue語句,將會直接跳轉到while語句的真值表達式處從新開始新的循環

在for語句中執行cintinue語句將會從可迭代對象中取下一個綁定變量后再次進入

循環總結:

while語句

for語句

break語句

continue語句

練習:

用字符串*號打印三角形

要求輸入整數,此整數代表三角形的高度

如:   3

*

***

*****

4

*

***

*****

*******

x = int(input('請輸入一個整數:'))

h = 1? ? ? ? ? ? ? ? ? ? ? ? # 行數

space = x * 2 + 1            # 空格字符數

while h < x:

star = '*' * (h * 2 - 1)? ? # 星星數量

S = star.center(space,' ')  # 綜合星星空格數量輸出一行

print(S)

h += 1                   # 循環進入第二行

輸入unicode起始值到變量begin

輸入unicode的終止值到變量end

打印這些編碼所對應的文字,結果如下:1

請輸入起始值:48

請輸入終止值:59

十進制編碼      十六進制編碼    文字

40               0x30? ? ? 0

49? ? ? ? ? ? ? 0x31? ? ? 1

.......

請輸入起始值:20000

請輸入終止值:20010

十進制編碼      十六進制編碼    文字

20000            0x4e20? ? ? .。

.......

3.假設用戶信息為:

用戶名:tarena

密碼:  123456

驗證碼:a1b2

當用戶輸入任何一項錯誤的時候就開始讓用戶從新輸入,直到輸入正確為止

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,702評論 6 534
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,615評論 3 419
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,606評論 0 376
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,044評論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,826評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,227評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,307評論 3 442
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,447評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,992評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,807評論 3 355
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,001評論 1 370
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,550評論 5 361
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,243評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,667評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,930評論 1 287
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,709評論 3 393
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,996評論 2 374

推薦閱讀更多精彩內容

  • Python 是一種相當高級的語言,通過 Python 解釋器把符合語法的程序代碼轉換成 CPU 能夠執行的機器碼...
    Python程序媛閱讀 1,931評論 0 3
  • http://python.jobbole.com/85231/ 關于專業技能寫完項目接著寫寫一名3年工作經驗的J...
    燕京博士閱讀 7,603評論 1 118
  • 這里簡要地整理下Linux用來處理數據文本的工具。具體命令詳情請在Linux命令大全中搜索或者查閱其他相關資料。 ...
    王詩翔閱讀 767評論 0 5
  • 只是簡單的希望你一切平安,一切安好! 從小時候的懵懵懂懂到現在的隨遇而安,一切都是美好的。只是,身邊再也沒有你……...
    XXXJBLACK閱讀 167評論 0 1
  • 2017年,我對你的感情又該何去何從。無法做到波平如鏡,反而放縱自己解鎖你的生日,一遍又一遍印刻心中,手機相冊依然...
    寒柒閱讀 349評論 0 1