前言
收集了100多道 Python 基礎練習題,面試題,筆試題,練完這些題 Python 內功大增!適合python初學者和基礎不牢的同學練手。
想刷面試題的也可以多看看,答案在網易雲平台課程上https://study.163.com/course/courseMain.htm?courseId=1211387804&share=2&shareId=480000002230338
- 前言
- 第1章 字符串練習題
- 1.1交換
- 1.2回文
- 1.3字符串切割
- 1.4拼接字符串
- 1.5替換字符
- 1.6九九乘法表
- 1.7字符下標
- 1.8 統計字符出現的次數
- 1.9 統計每個字符出現的次數
- 1.10 判斷字符a含b
- 1.11 查找字符首次出現位置
- 1.12 查找字符串最后一次出現位置
- 1.13判斷奇數偶數
- 1.14判斷一個姓名是否姓王
- 1.15判斷是不是數字
- 1.16字符串大小寫轉換
- 1.17字符串去掉首尾空格
- 1.18字符串去掉左邊指定空格或字符
- 1.19字符串去掉右邊指定空格或字符
- 1.20 去除字符串里面所有的空格
- 1.21字符串去重后排序
- 1.22字符串去重保留順序
- 1.23畫菱形
- 1.24 輸入一個正整數,判斷是幾位數
- 第2章 小學數學題
- 第3章 列表練習題
- 3.1 反轉(判斷對稱)
- 3.2列表切片
- 3.3列表大小排序
- 3.4 取出最大值最小值
- 3.5 找出列表中單詞最長的一個
- 3.6 切片取出列表中最大的三個數
- 3.7列表按絕對值排序
- 3.8按字符串長度排序
- 3.9去重與排序
- 3.10 去重保留順序
- 3.11 列表合並
- 3.12 生成列表(列表推導式)
- 3.13 列表成員的平方
- 3.14 找出列表大於0的數
- 3.15統計列表有多少大於0
- 3.16列表排除篩選
- 3.17列表過濾(filter)
- 3.18過濾列表中不及格學生(filter)
- 3.19找出列表中最大數出現的位置
- 3.20找出列表中出現次數最多的元素
- 3.21分別統計列表中每個成員出現的次數
- 3.22 列表查找元素位置
- 3.23列表查找兩數之和
- 3.24二維數組取值(矩陣)
- 3.25 二維數組拼接
- 3.26 列表轉字符串
- 3.27 兩個列表如何得到字典
- 3.28列表按age從小到大排序
- 3.29列表插入元素
- 3.30打亂列表順序隨機輸出
- 第4 章 元祖字典集合
- 4.1 輸出1-100除3余1 的數,結果為tuple
- 4.2 把2個元祖轉字典
- 4.3 把字典的value值轉成str
- 4.4 (1)和(1,)區別,[1]和[1,]
- 4.5 map函數將[1,2,3,4]處理成[1,0,1,0]
- 4.6 map函數將列表[1,2,3,4,5]轉變成[1,4,9,16,25]
- 4.7 map函數a=[1,3,5],b=[2,4,6]相乘得到[2,12,30]
- 4.8 reduce函數計算1-100的和
- 4.9 reduce函數計算10!
- 4.10 兩個字典合並a={"A":1,"B":2},b={"C":3,"D":4}
- 4.11 {'a':1,'b':2,'c':1} 得到 {1:['a','c'],2:['b']}
- 4.12 字典按key排序d={"name":"zs","age":18,"}
- 4.13 集合(交集、差集、並集)
- 第5章 綜合練習題(上機考試)
- 5.1 有1、2、3、4組成無重復數的三位數(排列組合)
- 5.2 冒泡排序
- 5.3文本中每行中長度超過3的單詞
- 5.4 列表數據寫入txt(open讀寫)
- 5.5 判斷郵箱程序(正則)
- 5.6判斷一個字符串的括號自否閉合(棧)
- 5.7 計算純數字子串組成的單一數字(子串)
- 5.8 移除字符串里面的'ab'
- 5.9看代碼得結果(join用法)
- 5.10 看代碼得結果(類和繼承)
- 5.11 看代碼得結果(閉包)
- 5.12看代碼得結果(列表推導式)
- 5.13 看代碼得結果(函數)
- 5.14 看代碼得結果(深拷貝和淺拷貝)
- 5.15 map reduce filter的使用
- 5.16 通過切片操作完成以下任務(切片)
- 5.17 根據列表數字出現次數排序去重(排序)
- 5.18 補缺失的代碼-給個路徑查找文件(遞歸)
- 5.19 如何判斷一個字符串有沒有重復字符
- 5.20 找出一個字符串中子串不含有重復字符的最長子串(子串)
- 5.21 一個字符串中所有子串是回文的次數(子串)
- 5.22 找出列表中連續的數字,只取首尾(棧)
第1章 字符串練習題
1.1交換
已知 a的值為"hello",b的值為"world",如何交換a和b的值?
得到a的值為"world",b的值為"hello"
1.2回文
回文的定義:"回文" 就是正讀倒讀都一樣的。
如奇數個:"98789",這個數字正讀是"98789" 倒讀也是"98789"。
偶數個數字"3223"也是回文數。
字母 "abcba" 也是回文。
判斷一個字符串是否是回文字符串,是打印True, 不是打印False
1.3字符串切割
已知一個字符串為 "hello_world_yoyo", 如何得到一個隊列 ["hello","world","yoyo"]
1.4拼接字符串
有個列表 ["hello", "world", "yoyo"]如何把把列表里面的字符串聯起來,
得到字符串 "hello_world_yoyo"
1.5替換字符
把字符串 s 中的每個空格替換成"%20"
輸入:s = "We are happy."
輸出:"We%20are%20happy."
1.6九九乘法表
打印99乘法表
1.7字符下標
找出單詞 "welcome" 在 字符串"Hello, welcome to my world." 中出現的位置,找不到返回-1
從下標0開始索引
1.8 統計字符出現的次數
統計字符串“Hello, welcome to my world.” 中字母w出現的次數
統計單詞 my 出現的次數
1.9 統計每個字符出現的次數
題目:輸入一個字符串str, 輸出第m個只出現過n次的字符,如在字符串 gbgkkdehh 中,
找出第2個只出現1 次的字符,輸出結果:d
1.10 判斷字符a含b
判斷字符串a="welcome to my world" 是否包含單詞b="world"
包含返回True,不包含返回 False
1.11 查找字符首次出現位置
輸出指定字符串A在字符串B中第一次出現的位置,如果B中不包含A,則輸出-1
從 0 開始計數
A = "hello"
B = "hi how are you hello world, hello yoyo !"
1.12 查找字符串最后一次出現位置
輸出指定字符串A在字符串B中最后出現的位置,如果B中不包含A,則輸出-1
從 0 開始計數
A = "hello"
B = "hi how are you hello world, hello yoyo !"
1.13判斷奇數偶數
給定一個數a,判斷一個數字是否為奇數或偶數
a1 = 13
a2 = 10
1.14判斷一個姓名是否姓王
輸入一個姓名,判斷是否姓王
a = "王五"
b = "老王"
1.15判斷是不是數字
如何判斷一個字符串是不是純數字組成
a = "123456"
b = "yoyo123"
1.16字符串大小寫轉換
將字符串 a = "This is string example....wow!" 全部轉成大寫
字符串 b = "Welcome To My World" 全部轉成小寫
1.17字符串去掉首尾空格
將字符串 a = " welcome to my world "首尾空格去掉
1.18字符串去掉左邊指定空格或字符
將字符串a = " welcome to my world !"左邊的空格去掉
1.19字符串去掉右邊指定空格或字符
將字符串a = " welcome to my world ! "右邊的空格去掉
1.20 去除字符串里面所有的空格
將字符串a = " welcome to my world ! "里面的所有空格都去掉
1.21字符串去重后排序
s = "ajldjlajfdljfddd",去重並從小到大排序輸出"adfjl"
1.22字符串去重保留順序
s = "ajldjlajfdljfddd",去重保留原來的順序,輸出"adfjl"
1.23畫菱形
題目 打印出如下圖案(菱形):
1.24 輸入一個正整數,判斷是幾位數
題目 給一個不多於5位的正整數,要求:
一、求它是幾位數,
二、逆序打印出各位數字。
a = 12345
第2章 小學數學題
2.1.水仙花數
如果一個 3 位數等於其各位數字的立方和,則稱這個數為水仙花數。
例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一個水仙花數
那么問題來了,求1000以內的水仙花數(3位數)
2.2完全數
如果一個正整數等於除它本身之外其他所有除數之和,就稱之為完全數。
例如:6是完全數,因為6 = 1+2+3;
下一個完全數是28 = 14+7+4+2+1。
求1000以下的完全數
2.3 數字1-100求和
求1+2+3…+100和
2.4計算求1-2+3-4+5-…-100的值
計算求1-2+3-4+5-…-100的值
2.5計算求1+2-3+4-5... ...100 的值
計算求1+2-3+4-5... ...100 的值
2.6計算 1-n 之間的所有 5 的倍數之和
定義一個函數:計算 1-n 之間的所有 5 的倍數之和,默認計算 1-100 ( n 是 一個整數)
2.7 n個自然數的立方和
計算公式 13 + 23 + 33 + 43 + …….+ n3
實現要求:
輸入 : n = 5
輸出 : 225
對應的公式 : 13 + 23 + 33 + 43 + 53 = 225
2.8 階乘10!
階乘的意思: 10!=10x9x8x7x6x5x4x3x2x1
求10!
2.9求1+2!+3!+...+10!的和
求1+2!+3!+...+10!的和
2.10求s=a+aa+aaa+aaaa+aa...a的值
求s=a+aa+aaa+aaaa+aa...a的值
如:n = 5 a = 3
33333 = 3x10**4+ 3x10**3+ 3x10**2 + 3x10**1 +3x10**0
2.11 斐波那契數列1、1、2、3、5、8、13 .....
已知一個數列:1、1、2、3、5、8、13、。。。。的規律為從 3 開始的每一項都等於其前兩項的和,這是斐波那契數列。
求滿足規律的 100 以內的所有數據
第3章 列表練習題
3.1 反轉(判斷對稱)
如何判斷一個數組是對稱數組:
要求:判斷數組元素是否對稱。例如[1,2,0,2,1],[1,2,3,3,2,1]這樣的都是對稱數組
用Python代碼判斷,是對稱數組打印True,不是打印False,如:
x = [1, "a", 0, "2", 0, "a", 1]
3.2列表切片
如果有一個列表a=[1,3,5,7,11]
問題:1如何讓它反轉成[11,7,5,3,1]
2.取到奇數位值的數字,如[1,5,11]
3.3列表大小排序
問題:對列表a 中的數字從小到大排序
a = [1, 6, 8, 11, 9, 1, 8, 6, 8, 7, 8]
3.4 取出最大值最小值
L1 = [1, 2, 3, 11, 2, 5, 3, 2, 5, 33, 88]
找出列表中最大值和最小值
3.5 找出列表中單詞最長的一個
a = ["hello", "world", "yoyo", "congratulations"]
找出列表中單詞最長的一個
3.6 切片取出列表中最大的三個數
取出列表中最大的三個值
L1 = [1, 2, 3, 11, 2, 5, 3, 2, 5, 33, 88]
3.7列表按絕對值排序
a = [1, -6, 2, -5, 9, 4, 20, -3] 按列表中的數字絕對值從小到大排序
3.8按字符串長度排序
b = ["hello", "helloworld", "he", "hao", "good"]
按list里面單詞長度倒敘
3.9去重與排序
L1 = [1, 2, 3, 11, 2, 5, 3, 2, 5, 33, 88]
如何用一行代碼得出[1, 2, 3, 5, 11, 33, 88]
L2 = [1, 2, 3, 4, 5] ,L[10:]結果是多少(報錯?還是None,還是[])
3.10 去重保留順序
將列表中的重復值取出(僅保留第一個),要求保留原始列表順序
如a=[3, 2, 1, 4, 2, 6, 1] 輸出[3, 2, 1, 4, 6]
3.11 列表合並
a = [1, 3, 5, 7]
b = ['a', 'b', 'c', 'd']
如何得到[1, 3, 5, 7, 'a', 'b', 'c', 'd']
3.12 生成列表(列表推導式)
用一行代碼生成一個包含 1-10 之間所有偶數的列表
3.13 列表成員的平方
列表a = [1,2,3,4,5], 計算列表成員的平方數,得到[1,4,9,16,25]
3.14 找出列表大於0的數
使用列表推導式,將列表中a = [1, 3, -3, 4, -2, 8, -7, 6]
找出大於0的數,重新生成一個新的列表
3.15統計列表有多少大於0
統計在一個隊列中的數字,有多少個正數,多少個負數,如[1, 3, 5, 7, 0, -1, -9, -4, -5, 8]
3.16列表排除篩選
a = ["張三","張四","張五","王二"] 如何刪除姓張的
3.17列表過濾(filter)
題1:有個列表a = [1, 3, 5, 7, 0, -1, -9, -4, -5, 8] 使用filter 函數過濾出大於0的數
題2:列表b = ["張三", "張四", "張五", "王二"] 過濾掉姓張的姓名
3.18過濾列表中不及格學生(filter)
過濾掉列表中不及格的學生
a = [
{"name": "張三", "score": 66},
{"name": "李四", "score": 88},
{"name": "王五", "score": 90},
{"name": "陳六", "score": 56},
]
3.19找出列表中最大數出現的位置
有個列表 a = [1, 2, 3, 11, 2, 5, 88, 3, 2, 5, 33]
找出列表中最大的數,出現的位置,下標從0開始
3.20找出列表中出現次數最多的元素
a = [
'my', 'skills', 'are', 'poor', 'I', 'am', 'poor', 'I',
'need', 'skills', 'more', 'my', 'ability', 'are',
'so', 'poor'
]
找出列表中出現次數最多的元素
3.21分別統計列表中每個成員出現的次數
a = [
'my', 'skills', 'are', 'poor', 'I', 'am', 'poor', 'I',
'need', 'skills', 'more', 'my', 'ability', 'are',
'so', 'poor'
]
3.22 列表查找元素位置
給定一個整數數組A及它的大小n,同時給定要查找的元素val,
請返回它在數組中的位置(從0開始),若不存在該元素,返回-1。
若該元素出現多次請返回第一個找到的位置
如 A1=[1, "aa", 2, "bb", "val", 33]
或 A2 = [1, "aa", 2, "bb"]
3.23列表查找兩數之和
給定一個整數數組nums 和一個目標值target ,請你在該數組中找出和為目標值的那兩個整數,並返回他
們的數組下標。
你可以假設每種輸入只會對應一個答案。但是,數組中同一個元素不能使用兩遍。
示例:
給定nums=[2,7,11,15],target=9
因為nums[0] + nums[1] =2+7 = 9
所以返回[0, 1]
3.24二維數組取值(矩陣)
有 a = [["A", 1], ["B", 2]] ,如何取出 2
3.25 二維數組拼接
a = [[1,2],[3,4],[5,6]] 如何一句代碼得到 [1, 2, 3, 4, 5, 6]
3.26 列表轉字符串
L = [1, 2, 3, 5, 6],如何得出 '12356'?
3.27 兩個列表如何得到字典
a = ["a", "b", "c"]
b = [1, 2, 3]
如何得到 {'a': 1, 'b': 2, 'c': 3}
3.28列表按age從小到大排序
如下列表
people = [
{"name":"yoyo", "age": 20},
{"name":"admin", "age": 28},
{"name":"zhangsan", "age": 25},
]
按年齡age從小到大排序
3.29列表插入元素
現有 nums=[2, 5, 7] ,如何在該數據最后插入一個數字 9 ,如何在2后面插入數字0
3.30打亂列表順序隨機輸出
有個列表a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
如何打亂列表a的順序,每次得到一個無序列表
第4 章 元祖字典集合
4.1 輸出1-100除3余1 的數,結果為tuple
輸出1-100除3余1 的數,結果為tuple
4.2 把2個元祖轉字典
將('a', 'b', 'c', 'd', 'e') 和 (1,2, 3, 4, 5)兩個tuple轉成
(1, 2, 3, 4, 5)為key, ('a', 'b', 'c', 'd', 'e') 為value的字典
4.3 把字典的value值轉成str
將字典里的值是數值型的轉換為字符串,如a = {'aa': 11, 'bb': 222}
得到{'aa': '11', 'bb': '222'}
4.4 (1)和(1,)區別,[1]和[1,]
a = [1,2,3] 和 b = [(1),(2),(3) ] 以及 c = [(1,),(2,),(3,) ] 的區別?
4.5 map函數將[1,2,3,4]處理成[1,0,1,0]
map函數,有個列表a = [1, 2, 3, 4] 計算列表中每個數除以2 取出余數 得到 [1,0,1,0]
4.6 map函數將列表[1,2,3,4,5]轉變成[1,4,9,16,25]
map函數將列表 [1,2,3,4,5] 使用python方法轉變成 [1,4,9,16,25]
4.7 map函數a=[1,3,5],b=[2,4,6]相乘得到[2,12,30]
map函數對列表a=[1,3,5],b=[2,4,6]相乘得到[2,12,30]
4.8 reduce函數計算1-100的和
reduce函數計算1-100的和
4.9 reduce函數計算10!
reduce函數計算1!+2!+3!+。。。+10!
4.10 兩個字典合並a={"A":1,"B":2},b={"C":3,"D":4}
兩個字典合並a={"A":1,"B":2},b={"C":3,"D":4}
4.11 {'a':1,'b':2,'c':1} 得到 {1:['a','c'],2:['b']}
m1={'a':1,'b':2,'c':1} # 將同樣的value的key集合在list里,輸出{1:['a','c'],2:['b']}
4.12 字典按key排序d={"name":"zs","age":18,"}
d={"name":"zs","age":18,"city":"深圳","tel":"1362626627"}
字典根據鍵從小到大排序
4.13 集合(交集、差集、並集)
a = [2, 3, 8, 4, 9, 5, 6]
b = [2, 5, 6, 10, 17, 11]
1.找出a和b中都包含了的元素
2.a或b中包含的所有元素
3.a中包含而集合b中不包含的元素
第5章 綜合練習題(上機考試)
5.1 有1、2、3、4組成無重復數的三位數(排列組合)
有1、2、3、4數字能組成多少互不相同無重復數的三位數?
分別打印這些三位數的組合
5.2 冒泡排序
a = [11, 2, 33, 1, 5, 88, 3]
冒泡排序:
依次比較兩個相鄰的元素,如果順序(如從小到大、首字母從A到Z)
錯誤就把他們交換過來
5.3文本中每行中長度超過3的單詞
在以下文本中找出 每行中長度超過3的單詞:
Call me Ishmael. Some years ago - never mind how long precisely - having
little or no money in my purse, and nothing particular to interest me
on shore, I thought I would sail about a little and see the watery part
of the world. It is a way I have of driving off the spleen, and regulating
the circulation. - Moby Dick
python的預期結果(盡量不超過3行搞定):
[['Call', 'Ishmael.', 'Some', 'years', 'never', 'mind', 'long', 'precisely', 'having'],
['little', 'money', 'purse,', 'nothing', 'particular', 'interest'],
['shore,', 'thought', 'would', 'sail', 'about', 'little', 'watery', 'part'],
['world.', 'have', 'driving', 'spleen,', 'regulating'],
['circulation.', 'Moby', 'Dick']]]
5.4 列表數據寫入txt(open讀寫)
有一個數據list of dict如下
a = [
{"yoyo1": "123456"},
{"yoyo2": "123456"},
{"yoyo3": "123456"},
]
寫入到本地一個txt文件,內容格式如下:
yoyo1,123456
yoyo2,123456
yoyo3,123456
5.5 判斷郵箱程序(正則)
寫一個小程序:控制台輸入郵箱地址(格式為 username@companyname.com), 程序識別用戶名和公司名后,將用戶名和公司名輸出到控制台。
要求:
- 校驗輸入內容是否符合規范(xx@yy.com), 如是進入下一步,如否則拋出提 示"incorrect email format"。注意必須以.com 結尾
- 可以循環“輸入--輸出判斷結果”這整個過程
- 按字母 Q(不區分大小寫)退出循環,結束程序
5.6判斷一個字符串的括號自否閉合(棧)
判斷一個字符串的括號自否閉合(包括大小中括號)
左括號和右括號必須是一一對應
比如:{[{()}]()} 就是一個閉合的字符串
{[{()}]([)]} 這個里面 ([)] 這種就是不閉合
5.7 計算純數字子串組成的單一數字(子串)
有一個純數字組成的字符串, 返回連續單一數字子串的個數
輸入字符串: “22252”
只含單一數字的子串是
1個字符:2出現4次,5出現1次
2個字符 22 出現2 次
3個字符 222 出現1 次
4個子串 0次
5個字符 0次
總共 4+1+2+1 =8
輸出結果:8
示例:
輸入:22252
輸出: 8
5.8 移除字符串里面的'ab'
有一個字符串列表['aababbc', 'badabcab'] 將字符串中的'ab' 移除
比如'aababbc' 移除里面的ab后得到abc 需繼續移除ab,得到c,直到字符串中不會出現連續的ab
5.9看代碼得結果(join用法)
x="abc",y="def",z=["d","e","f"],
分別求出x.join(y) 和x.join(z)返回的結果
5.10 看代碼得結果(類和繼承)
閱讀以下代碼,打印結果是什么?
class A(object):
def __init__(self):
self.__Gender()
self.Name()
def __Gender(self):
print("A.__Gender()")
def Name(self):
print("A.Name()")
class B(A):
def __Gender(self):
print("B.__Gender()")
def Name(self):
print("B.Name()")
b = B()
5.11 看代碼得結果(閉包)
閱讀以下代碼,得到的結果是什么
def fun():
temp = [lambda x: i*x for i in range(4)]
return temp
for everyLambda in fun():
print(everyLambda(2))
5.12看代碼得結果(列表推導式)
A0 = dict(zip(('a','b','c','d','e'),(1,2,3,4,5)))
A1 = range(10)
A2 = [i for i in A1 if i in A0]
A3 = [A0[s] for s in A0]
A4 = [i for i in A1 if i in A3]
A5 = {i:i*i for i in A1}
A6 = [[i,i*i] for i in A1]
5.13 看代碼得結果(函數)
閱讀以下代碼,得到什么結果
def f(x,l=[]):
for i in range(x):
l.append(i*i)
print l
f(2)
f(3,[3,2,1])
f(3)
5.14 看代碼得結果(深拷貝和淺拷貝)
寫出以下程序的輸出結果
from copy import deepcopy, copy
li = [1, 2, [3, 4]]
li_sliced = li[:]
li_copied = copy(li)
li_deep_copied = deepcopy(li)
li[0] = 888
li[2][0] = 666
print(li_sliced, li_copied, li_deep_copied)
5.15 map reduce filter的使用
分別使用map reduce filter 函數完成下面的任務
1.計算 1- 100 的和
2.1-10,對每個數字的平方
3. ["a", "ab", "abc", "bc", "cd"] 輸出含有c字符的元素,返回值是list
5.16 通過切片操作完成以下任務(切片)
有個字符串為"abcdefg.exe" 通過切片完成下面的任務
1.輸出前3個字符
2.輸出后2個字符
3.倒敘輸出
4.間隔1個字符串輸出
5.17 根據列表數字出現次數排序去重(排序)
a=[1,2,1,2,2,2,3,4,5,6,56,7,1,3,4]
按列表中數字出現的次數,從高到低排序,並去除重復的
比如2出現了4次,排第一個位置。1出現了3次,於是可以得到:[2, 1, 3, 4, 5, 6, 7, 56]
5.18 補缺失的代碼-給個路徑查找文件(遞歸)
def print_directory_contents(sPath):
"""
這個函數接受文件夾的名稱作為輸入參數,
返回該文件夾中文件的路徑,
以及其包含文件夾中文件的路徑。
"""
5.19 如何判斷一個字符串有沒有重復字符
判斷一個字符串是否包含重復字符。例如:“hello”就包含重復字符‘l’,而“world”就不包含重復字符, 有重復打印True, 沒重復打印False
5.20 找出一個字符串中子串不含有重復字符的最長子串(子串)
給定一個字符串,請你找出其中不含有重復字符的最長子串的長度。
示例1:
輸入:" abcabcbb" 輸出: 3
解釋:因為無重復字符的最長子串是"abc", 所以其長度為3。
示例2:
輸入: "bbbbb"" 輸出: 1
解釋:因為無重復字符的最長子串是"b", 所以其長度為1。
示例3:
輸入: " pwwkew" 輸出: 3
解釋:因為無重復字符的最長子串是"wke"', 所以其長度為3。
請注意,你的答案必須是子串的長度,"pwke"是一個子序列,不是子串。
5.21 一個字符串中所有子串是回文的次數(子串)
回文是指正序(從左向右)和倒序(從右向左)讀都是一樣的。
例如:121 ,abcdedcba,123321等都是回文
這種的字符串“ABCABADCSABBAUYIIYU”找出回文出現的次數
子串回文是:'BB', 'II','ABA','ABBA', 'YIIY','UYIIYU' 總共有6個
5.22 找出列表中連續的數字,只取首尾(棧)
找出列表中連續的數字,然后只取首尾
有一個列表[1,2,3,4,8,6,7,11,15]
輸出[(1,4),(6,8)]