資源簡介 (共20張PPT)Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.少兒編程課找數字字符串的遍歷for x in 字符串:…for x in 'python':print(x)字符串的切片切片:[起點:終點:步長]s='python'print(s[1:3:1])print(s[1:3])print(s[:3:])print(s[1::])print(s[::-1])找數字在1~218中,各位數之和能被5整除的所有數字。例如:5,136,186等。位數不確定的情況下使用整除求余或字符串選取的方式均無法方便的取出各位數。此時可以將數字轉為字符串后,利用循環指令取出字符串的各個字,然后再將字轉為數字的方式計算各位數字之和是否可以整除5。找數字for x in range(1,219):n=str(x) #將未知位數的數字轉為字符串sum=0 #準備求和for y in n: #遍歷字符串sum+=int(y) #所有數字累加if sum % 5==0: #如果sum可以整除5則打印這個數字print(x)計數六位數2018XX可以被12整除,則XX是什么?XX代表著兩個一樣的數字,則只能是00,11,22,33,44,55,66,77,88,99。讓這些數字以與2018拼接,然后與12做整除運算。nums=['00','11','22','33','44','55','66','77','88','99']計數nums=['00','11','22','33','44','55','66','77','88','99']for x in range(10):n='2018'+nums[x]if int(n)%12==0:print(int(n))多條件篩選有時解決一個問題的需要多重篩選條件。只要有一個條件不符合就前功盡棄。例如明朝的科舉制度,分為院試、鄉試、會試和殿試四個階段:參加院試的考生不論年紀均可參加,通過院試的考生稱為秀才。只有通過院試的秀才可以參加每三年一次的鄉試,通過鄉試的考生稱為舉人。只有通過鄉試的舉人在第二年可以參加會試,通過會試的考生稱為貢士。只有通過會試的貢士可以參加殿試,殿試有皇帝或皇帝指派的重臣主持,通過殿試的考生稱為進士。特別的,進士中排名第一的稱為狀元,第二名稱為榜眼,第三名稱為探花。多條件篩選zfill():返回指定長度的字符串,原字符串右對齊,前面補0找數字有一個七位數2018xyz能同時被2,3,4,5,6,7,8,9整除,則七位數是幾?我們要找符合下面二個條件的數字xyz各不相同。2018與xyz組成的七位數可以整除2,3,4,5,6,7,8,9。找數字1. xyz各不相同。xyz是一個七位數字的后三位,所以取值范圍從000~999。將當前數字轉為字符串后,一旦發現有重復的內容,就跳到下一個3位數繼續判斷。如果都不重復,進入步驟2。如果數字不足3位,前面補0如何實現?解決方式:將數字轉為字符串,調用字符串的zfill(希望長度)函數。只要字符串的長度小于期望長度,則會在字符串前面補充0。找數字2. 2018與xyz組成的七位數可以整除2,3,4,5,6,7,8,9與2018組成7位數字之后,從2至9進行整除測試,如果一個符合就不用進行后面的整除測試了。找數字n='2018'for x in range(1000):flag=Trues=str(x).zfill(3) #將不足三位的字符串前面補0for y in s:if s.count(y)>1: #如果有重復的內容flag=Falsebreakif flag:m=int(n+s) #生成七位數字for z in range(2,10): #七位數字是否可以整除2,3,4,5,6,7,8,9if m%z!=0:flag=Falsebreakif flag:print(n+s) #打印通過以上所有測試的七位數找數字有一個三位數ABC,不同的字母代表不同的數字,且:A能被2整除,AB能被3整除,ABC能被5整除,則滿足條件的所有三位數中最小值是?最大值是?找數字我們要找符合下面三個條件的數字三位數,每位數各不相同。對數字組合有整除的要求。只要最小的和最大的2個三位數。找數字三位數,每位數各不相同。遍歷所有的3位數字(100~999)將當前數字轉為字符串后,一旦發現有重復的內容,就跳到下一個3位數繼續判斷。如果都不重復,進入步驟2。找數字對數字組合有整除的要求對字符串進行切片,切片后轉為數字進行整除判定。通過整除判定進入步驟3找數字只要最小的和最大的2個三位數。設定min和max兩個變量,初始時min為最大的三位數999,而max為最小的三位數100。當一個三位數字通過了步驟1和步驟2的判定后,只要該數字大于原先的max,則將這個數字賦值給max;只要該數字小于min,則將這個數字賦值給min。找數字nums=[0,2,3,5]min=999 #假設最小值max=100 #假設最大值for x in range(100,1000):n=str(x)s=Truefor y in n:if n.count(y)>1:s=Falsebreakif s:for z in range(1,4):a=int(n[0:z:])if a % nums[z]!=0:s=Falsebreakif s:if x > max : max=xif x < min : min=xprint(min,max) 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫