split(): 文字列をカンマ区切りのリストに変換します。
join(): リストを文字列に変換します。
例:
1.指定された入力を反転します --> 木曜日は今日です
方法:1 ループを使用する
s = "today is thursday" reverse = "" i = 0 while i<len(s): reverse = reverse + s[-(i+1)] i+=1 print(reverse) #yadsruht si yadot i = 0 word = "" while i<len(reverse): if reverse[i]==' ': print(word[::-1],end=' ') word = "" i+=1 continue word = word + reverse[i] i+=1 else: print(word[::-1])
方法:2 リストを使用する
sen = "today is thursday" l = sen.split(" ") print(l) print(l[::-1]) s = " ".join(l[::-1]) print(s)
出力:
yadsruht si yadot thursday is today
ディープコピー:
-->Python では、可変オブジェクト (リストなど) に割り当てられた変数は、オブジェクトへの参照を保持します。
-->2 つの変数が同じオブジェクトを参照している場合、一方の変数を介して行われた変更はもう一方の変数に反映されます。
例:
l1 = [10,20,30] l2 = l1 print(l1) print(id(l1)) print(l2) print(id(l2)) l2[0] = 111 print(l1) print(l2)
出力:
[10, 20, 30] 127285488814912 [10, 20, 30] 127285488814912 [111, 20, 30] [111, 20, 30]
浅いコピー:
-->copy() メソッドは新しいリスト オブジェクトを作成しますが、(ネストされたオブジェクトの) 要素の参照のみをコピーします。
-->別のメモリアドレスに保存されます。
例:
l1 = [10,20,30] l2 = l1.copy() print(l1) print(id(l1)) print(l2) print(id(l2)) l2[0] = 111 print(l1) print(l2)
出力:
[10, 20, 30] 140500496468800 [10, 20, 30] 140500496470528 [10, 20, 30] [111, 20, 30]
辞書順:
-->辞書順とは、文字のアルファベット順に基づいて辞書順に並べることを意味します。
--> ASCII 順序で比較します。(A-Z:65-91)、(a-z:97-122)
比較演算子の使用:
l1 = ['lakshmi', 'guru', 'kuhan'] l2 = ['lakshmi', 'guru', 'kuhan'] print(l1 == l2) print(l1 != l2) l2 = ['guru', 'lakshmi', 'kuhan'] print(l1>l2) print(l1<l2)
出力:
True False True False
演習: 面接の質問
l1 = [10,20,30] l2 = [5,6,7] for no in l1: for num in l2: print(no, num, end=' ') print()
出力:
10 5 10 6 10 7 20 5 20 6 20 7 30 5 30 6 30 7
l1 = [10,20,30] l2 = [8,20,7] for no in l1: for num in l2: if no != num: print(no, num,end=' ') print()
出力:
10 8 10 20 10 7 20 8 20 7 30 8 30 20 30 7
タスク:
1.合計が 5
となるペアをリストから見つけます。
l1 = [1,2,3,4,5,6,7,8,9,0]
方法:1
l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] pairs = [] for i in l: for j in l: if i + j == 5: pairs.append((i,j)) print(pairs)
出力:
[(1, 4), (2, 3), (3, 2), (4, 1), (5, 0), (0, 5)]
方法:2
l = [1,2,3,4,5,6,7,8,9,0] for i in range(len(l)): for j in range(len(l)): sum = l[i] + l[j] if sum == 5: print(l[i], l[j])
出力:
1 4 2 3 3 2 4 1 5 0 0 5
2.足りない番号を見つけてください
l = [10,20,30,50,60,70,80,90]
方法:1
l = [10, 20, 30, 50, 60, 70, 80, 90] results = [] for i in range(len(l) - 1): if l[i + 1] - l[i] != 10: results.append(int((l[i] + l[i + 1]) / 2)) for result in results: print(result)
方法:2
l = [10,20,30,50,60,70,80,90] i=0 while i<len(l)-1: if l[i+1]-l[i]!=10: result=(l[i]+l[i+1])/2 print(int(result)) i+=1
出力:
40
以上がPython の Day-List 関数、タスクの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。