# coding=Big5
L1=list('Physics') #將字串轉換為清單。
print 'L1=',L1,' len(L1)=',len(L1)
L2=[[1,2],[3,4],[5,6],7,8]
print 'L2=',L2
print 'L2[2][0]=',L2[2][0] #取出巢狀清單之特定元素
#(L2的第3元素之第1元素)
L2[1]='YCC' # 將L2的L2[1]元素取代為字串'YCC'。
print 'L2=',L2
L2[1]=L2[1]*3 # 將L2的L2[1]元素擴充為原來的3倍。
print '將L2的L2[1]擴充為原來的3倍,L2=',L2
L2[1:4]=[] # 將L2的第2~4元素清空。
print '使用 L2[1:4]=[]之後, L2=',L2
#===========螢幕上可以看到的輸出結果=======
1= ['P', 'h', 'y', 's', 'i', 'c', 's'] len(L1)= 7
L2= [[1, 2], [3, 4], [5, 6], 7, 8]
L2[2][0]= 5
L2= [[1, 2], 'YCC', [5, 6], 7, 8]
將L2的L2[1]擴充為原來的3倍,L2= [[1, 2], 'YCCYCCYCC', [5, 6], 7, 8]
使用 L2[1:4]=[]之後, L2= [[1, 2], 8]
#list列表
L=[1,2,3]
a=[3,4,6]
L.extend(a)
print 'after L.extend(a), L=',L
L.insert(4, 'THU')
print "L.insert(4,'THU')=",L
p5=L.pop(5)
print 'p5=',p5
print 'after pop(5), L=',L
print '===L=',L
L.remove(3)
print 'L.remove(3)=',L
L.remove('THU')
print "L.remove('THU')=",L
for i in range(5):
L.append(i**2)
print 'L=',L
M=sorted(L)
print 'the sorted L saved into M, M=',M
print 'L is unchanged, L=',L
M.reverse()
print 'the sequence of M is reversed: M=',M
M.pop(8)
print 'after M.pop(8), M=',M
a=[1,2,1]
b=[1,2,3]
# 向量的長度
a1=sum(a[i]**2 for i in range(3))
b1=sum(b[i]**2 for i in range(3))
print a1,b1,a1**0.5,b1**0.5
# 向量的內積
sc=sum(a[i]*b[i] for i in range(3))
print 'a dot b=',sc
# 向量的外積
c=[0 for i in range(3)]
c[0]=a[1]*b[2]-a[2]*b[1]
c[1]=a[2]*b[0]-a[0]*b[2]
c[2]=a[0]*b[1]-a[1]*b[0]
print 'c=a x b=',c
def sort2(e,N1,N2,x):
ee=[]
for i in range(N1):
e1=[]
e1.append(e[i][x])
for j in range(N2):
e1.append(e[i][j])
ee.append(e1)
ee.sort()
es=[]
for i in range(N1):
ee[i].pop(0)
es.append(list(ee[i]))
return es
N1=4
N2=3
x=2
e1=[[2,300,5],[1,400,3],[4,100,2],[3,200,6]]
print 'e1=',e1
e2=sort2(e1,N1,N2,x)
print 'e2=',e2