#!/usr/bin/env python
# Author:liujun
names = []
# Define an empty list
names = ["ZhangYang", "Guyun", "XiangPeng", "XuLiangchen"]
print(names)
print(names[0])
# Take the first element in the list
print(names[1:3])
# Take continuous elements from the first one to the second one(not the third one,left closed and right open)
print(names[-1])
# Take the last element
print(names[-2:])
# Take the last two elements,
print(names[0:3])
print(names[:3])
# Take the first three elements
names.append("LeiHaidong")
# Append a new element
names.insert(1, "ChenRongHua")
# Insert a new element in a specified location
names[2] = "XieDi"
# replace the second element with "XieDi"
names.remove("ChenRongHua")
# remove an element by name
del names[2]
# delete an element by index
names.pop()
# delete the last element if the parameter is not given,or delete an element by index like del names[2]
print(names)
names = ["ZhangYang", "Guyun", "XiangPeng", "XuLiangchen","ZhangYang1", "Guyun1", "XiangPeng1", "XuLiangchen1","XieDi"]
print(names.index("XieDi"))
# Get the first index of a specified element
print(names.count("GuYun"))
# Count the number of specified element
names.clear()
# empty the list
names = ["ZhangYang", "Guyun", "XiangPeng", "XuLiangchen", "ZhangYang1", "Guyun1", "XiangPeng1", "XuLiangchen1", "XieDi"]
names.reverse()
# Reverse the list
names.sort()
# sort the list
names2 = [1,2,3,4]
names.extend(names2)
# Extend the original list with a new list
# Shallow copy
names = ["ZhangYang", "Guyun", "XiangPeng", "XuLiangchen", ["ZhangYang1", "Guyun1", "XiangPeng1"], "XuLiangchen1", "XieDi"]
names2 = names.copy();
names[1] = "zzzzzzzzzzzzzz"
names[4][1] = "gggggggggggggg"
print(names)
print(names2)
# Shallow copy
import copy
names = ["ZhangYang", "Guyun", "XiangPeng", "XuLiangchen", ["ZhangYang1", "Guyun1", "XiangPeng1"], "XuLiangchen1", "XieDi"]
names2 = copy.copy(names) # equals to names2 = names.copy();
names[1] = "zzzzzzzzzzzzzz"
names[4][1] = "gggggggggggggg"
print(names)
print(names2)
# deep copy
names = ["ZhangYang", "Guyun", "XiangPeng", "XuLiangchen", ["ZhangYang1", "Guyun1", "XiangPeng1"], "XuLiangchen1", "XieDi"]
names2 = copy.deepcopy(names)
names[1] = "zzzzzzzzzzzzzz"
names[4][1] = "gggggggggggggg"
print(names)
print(names2)
# Traverse a list
for element in names:
print(element)
for element in names:
print(names.index(element), element)
for index,element in enumerate(names):
print(index,element)