name = ["john", "ann", "mary", "peter", ["ryan", 1], 2, 3, [True, 0,0,9, "hello"]]
print(name, id(name), type(name))
print(name[0], name[4])
print(name[4][0])
name[0] = ["david", 20]
name[4][0]= 'goodman'
print(name)
del name[1]
print(name)
#temp7
a=[1,[2,3],4,5,6,7,8,9,['a','b','c']]
print(a[8][1])
a=[1,[2,3],4,[5,[[6],7]],8,9,['a','b','c']]
print(a[3][1][0][0])
a[0] = 10
print(a)
a[1] = 10
print(a)
a = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
print(a[10], a[-4])
b=slice(0,7,1) # start, end-1, step
print(type(b))
print(a[b], a[0:7:1])
print(a[b], a[0:15:7])
x = 2
y = 17
z = 6
b = slice(x,y,z) # start, end-1, step
print("aaa")
print(a[x:y:z])
print("bbb")
print(a[7:2:1])
print(a[7:-1:1])
print(a[7:-1:-1])
print("ccc")
print(a[-1:0:-4])
print(a[15:0:-4])
#allow empty value and some functions
print(a[-1::-1])
print(a[:10]) # 0:10:1
print(a[::5]) # 0:len(a):5
print(a[0:15:1])
print("ddd")
del a[::5]
print(a)
a.remove(4)
print(a)
a = [1,2,3,4,5,4,6,7,8,9,10,11,12,13,14,15,16]
a.remove(4)
print(a)
a.clear()
print(a)
a = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
a = []
print(a)
a = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
a.sort(reverse=True) # change original list
print(a)
print("eee")
b = sorted(a)
print(a)
print(b)
print("fff")
a=[1,2,3,4,9,10,11,12,5,6,7,8,13,14,15]
a.sort()
print(a)
b = sorted(a,reverse=True)
c = sorted(a)
print(a)
print(b)
print(c)
a=[1,2,3,4,9,10,11,12,5,6,6,7,8,13,14,15]
print(a.count(6), a.index(6))
print(a.count(0), a.index(6))
#print(a.count(0), a.index(0)) #error appear for index 0 not in the list
#temp 8, for tuple
a = 1,2,3,4,9,10,11,12,5,6,6,8,13,14,15
print("temp 8")
print(a.count(0),a.index(6))
print(a[0])
#a[0]=10
#a.sort()
print(a)
b = sorted(a,reverse=True)
print(a)
print(b)
b = 1,
print(b)
b = ()
print(b, type(b))
a = {1,2,"a",3,4,"",9,10,"b",11,12,5,6,"a",6,8,13,14,15}
print(type(a))
print(a)
print("ggg")
a = [1,2,"a",3,4,"b",9,10,"b",11,12,5,6,"a",6,8,13,14,15]
#a = set(a)
#print(type(a))
#a = list(a)
a = list(set(a))
print(a)
a = {1,2,"a",3,4,"",9,10,"b",11,12,5,6,"a",6,8,13,14,15}
a.add(16)
print(a)
a.update(a, {17, 18})
print(a)
a = {1,2,3,4}
b = {3,4,5,6}
print(a | b)
print(a & b)
print(a - b)
print(a ^ b)