ポインタ値を変更したり、リスト1を変更するには
図1は、直接接続されている「+」によって、同じデータタイプ列とリストをPYTHON
「+」だけの長さではなく、すべての要素の追加リストが展開します。
lst1 = ['a','c']
lst2 = ['d','g']
lst = lst1 + lst2
s1 = "adc"
s2 = "agf"
s3 = s1 + s2
リバースリスト
Def rev(lst):
lt = []
for i in lst:
lt = [i] + lt
return lt
javaのと比較すると
。1、Javaのリストを直接「+」演算子を使用することができない、Javaオブジェクトは、方法によって達成される、など。
String a[] = { "A", "E", "I" };
String b[] = { "O", "U" };
List list = new ArrayList(Arrays.asList(a));
list.addAll(Arrays.asList(b));
Object[] c = list.toArray();
System.out.println(Arrays.toString(c));
[A, E, I, O, U]
その他のリファレンス:
https://www.runoob.com/java/arrays_merge.html
https://www.cjavapy.com/article/290/
2、特性のリスト
索引(インデックス)とスライス(スライス)の間の違いに注意してください
lst = ['s','f','i']
ls1 = lst[0]
ls2 = lst[0:1]
type(lst1) --->str,进行索引操作
type(lst2) --->list,进行切片操作
LST1 LST2値と同じですが、異なる種類のデータが、
3、リスト及び文字列データタイプを受信しながら、第1及び第2のスイッチング素子
def swap(ls):
return ls[1:2]+ls[0:1]+ls[2:]
図4に示すように、アプリケーション・データ転送タイプのデータ・タイプ
myList = list("Isaac")
def swapL(xs) :
return [xs[-1]]+xs[1:-1]+[xs[0]]
def swapLx(lst):
lst = swapL(lst)
swapLx(myList)
myList
結果: [ 'I'、 'S'、 'A'、 'A'、 'C']
説明:
図5に示すように、パラメータ値の特定の変更場合にのみ
myList = list("Isaac")
def swapL(xs) :
return [xs[-1]]+xs[1:-1]+[xs[0]]
def swapLx(lst):
lst[:] = swapL(lst)
swapLx(myList)
myList
結果:
[ 'C'、 'S'、 'A'、 'A'、 'I']
説明:
6、まとめ
- 直接割り当てリストのデータ型は、新しい変数へのポインタを変更することで、元の格納されたデータは変更されません。
- リスト[:]は、その値を変更するために直接データが割り当てられ、記憶された値が直接変更されます
7.その他のヒント
def swapx(lst):
lst[-1],lst[0] = lst[0],lst[-1]
swapx(myList)
myList
结果:
['c', 's', 'a', 'a', 'I']