1、python中元組和列表的區別
a= 是乙個列表
b=() 是乙個元組
區別:列表可以修改而元組不可以修改
相同點:都是乙個容器
形如:tuple1=(1,2,3,4,5,6,7,8,9)
list1=list(tuple1)
print(list1)
輸出:[1, 2, 3, 4, 5, 6, 7, 8, 9]
2、python中的itertools.permutations,返回可迭代物件的所有數學全排列方式。
形如:for item in permutations([『a』, 『b』, 『c』]):
… print item
(『a』, 『b』, 『c』)
(『a』, 『c』, 『b』)
(『b』, 『a』, 『c』)
(『b』, 『c』, 『a』)
(『c』, 『a』, 『b』)
(『c』, 『b』, 『a』)
3、python中join()方法,將字串、元組、列表中的元素以指定的字元(分隔符)連線生成乙個新的字串
形如:seq1 = [『hello』,『good』,『boy』,『doiido』]
print 』 '.join(seq1)
hello good boy doiido
print 『:』.join(seq1)
hello:good?doiido
4、python中map() 會根據提供的函式對指定序列做對映。
第乙個引數 function 以引數序列中的每乙個元素呼叫 function 函式,返回包含每次 function 函式返回值的新列表。
map(function, iterable, …)
形如:def square(x) : # 計算平方數
return x ** 2
map(square, [1,2,3,4,5]) # 計算列表各個元素的平方
[1, 4, 9, 16, 25]
map(lambda x: x ** 2, [1, 2, 3, 4, 5]) # 使用 lambda 匿名函式
[1, 4, 9, 16, 25]
#提供了兩個列表,對相同位置的列表資料進行相加
map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])
[3, 7, 11, 15, 19]
5、python中set() 函式建立乙個無序不重複元素集,可進行關係測試,刪除重複資料,還可以計算交集、差集、並集等。
形如:x = set(『world』)
y = set(『goole』)
#建立乙個無序不重複元素集,重複的元素被刪除了
print(x)
print(y)
#交集print(x & y)
#並集print(x | y)
#差集print(x - y)
輸出:6、python中sorted() 函式對所有可迭代的物件進行排序操作。
sort 與 sorted 區別:
sort 是應用在 list 上的方法,sorted 可以對所有可迭代的物件進行排序操作。
list 的 sort 方法返回的是對已經存在的列表進行操作,無返回值,而內建函式 sorted 方法返回的是乙個新的 list,而不是在原來的基礎上進行的操作。
形如:a = [5,7,6,3,4,1,2]
b = sorted(a) # 保留原列表
print(a)
[5, 7, 6, 3, 4, 1, 2]
print(b)
[1, 2, 3, 4, 5, 6, 7]
7、劍指offer:字串的排列。 輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則按字典序列印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba。
import itertools
class
solution
:def
permutation
(self, ss)
:# write code here
ifnot ss:
return
arr=
sorted
(set
(list
(map(''
.join, itertools.permutations(ss)))
))return arr
劍指Offer 字串排列
題目描述 輸入乙個字串,列印出該字串中字元的所有排列。解析 step 1 求所有可能出現第乙個位置的字元。把第乙個字元與後面的每個字元交換。step 2 固定第乙個字元,將後面的字元利用遞迴進行全排列。include include using namespace std void stringpe...
劍指offer 字串的排列
題目描述 輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則列印出由字元a,b,c 所能排列出來的所有字串abc,acb,bac,bca,cab和cba。結果請按字母順序輸出。解題思路 深度搜尋,在每層搜尋裡設定乙個a陣列對映所有字元,每個字元在這層迴圈中只能使用一次,避免重...
劍指offer 字串的排列
輸入乙個字串,按字典序列印出該字串中字元的所有排列。例如輸入字串abc,則列印出由字元a,b,c所能排列出來的所有字串abc,acb,bac,bca,cab和cba。結果請按字母順序輸出。輸入描述 輸入乙個字串,長度不超過9 可能有字元重複 字元只包括大小寫字母。分析 經典問題。記住吧。class ...