创建一个数组
books = ["python", "java", "scala", "c++"]
数组的打印
print(books)
数组元素的访问,访问第一个元素
message = books[0]
print(message)
访问最后一个元素
message = books[len(books) - 1]
print(message)
快速访问最后一个元素
message = books[-1]
print(message)
快速访问倒数第二个元素
message = books[-2]
print(message)
修改数组中元素的值-根据index修改
message = "spark"
books[3] = message
print(books)
在数组中添加元素
方式1,在数组末尾添加元素
books.append("c++")
print(books)
在数组指定位置前插入新元素
例如在数组头添加元素,第一个参数为要插入位置的索引,第二个参数是值
books.insert(0, "hive")
print(books)
删除元素-del语句
删除最后一个元素
del books[-1]
print(books)
删除元素-pop()语句,与del不同之处在于pop()方法会返回删除元素
默认情况下删除数组最后一个元素
message = books.pop()
print(message)
根据需要删除元素
例如删除第一个元素
message = books.pop(0)
print(message)
根据值删除元素--ps:remove()方法只会删除第一次出现的元素
books.remove("scala")
print(books)
排序
books = ["python", "java", "scala", "c++"]
books_copy = books
按照字母的先后顺序升序排列--ps:sort()方法永久性的排序,无法恢复到之前的数组
books_copy.sort()
print("books:", books) # books: ['c++', 'java', 'python', 'scala']
print("books_copy:", books_copy) # books_copy: ['c++', 'java', 'python', 'scala']
传递参数,逆序排列--ps:此方法也是不可逆的,无法得到之前的数组
books = ["python", "java", "scala", "c++"]
books.sort(reverse=True)
print(books)
临时排序
books = ["python", "java", "scala", "c++"]
books_sorted = sorted(books)
print("books:", books) # books: ['python', 'java', 'scala', 'c++']
print("books_sorted:", books_sorted) # books_sorted: ['c++', 'java', 'python', 'scala']
sorted 逆序临时排序
books_sorted = sorted(books, reverse=True)
print(books_sorted)
数组的反转
books.reverse()
print(books)
books.reverse()
print(books) # 调用两次reverse()方法回到原来的数组
数组的长度
length = len(books)
print(length)
循环
for 循环
books = ["python", "java", "scala", "c++"]
for book in books:
print(book)
for book in books:
print(book.title(), "is very important for me", "!")
创建数字列表--math
range()函数-ps:含头不含尾
for value in range(1, 5):
print(value)
list()和range()合用构造数组
numbers = list(range(1, 6))
print(numbers)
range()指定步长-ps:第一个参数是开始,第二个参数是结尾,第三个参数是步长
numbers = list(range(1, 10, 2))
print(numbers)
range()函数构造平方
numbers = []
for value in range(1, 11):
numbers.append(value**2)
print(numbers)
最大最小函数
min_value = min(numbers)
max_value = max(numbers)
print(min_value)
print(max_value)
求和函数
sum_value = sum(numbers)
print(sum_value)
创建数组-ps:注意没有冒号
numbers = [value**2 for value in range(1, 11)]
print(numbers)
列表分片-切分
创建一个数组
numbers = [value**3 for value in range(1, 11)]
print(numbers) # [1, 8, 27, 64, 125, 216, 343, 512, 729, 1000]
获取numbers的前三个数字并保存为新的数组
numbers03 = numbers[0: 3]
print("numbers03", numbers03) # numbers03 [1, 8, 27]
获取2-5位置
numbers25 = numbers[2: 6]
print(numbers25) # [27, 64, 125, 216]
获取前4个数字-ps:第一个参数可以不写
numbers4 = numbers[: 4]
print(numbers4)
获取索引2以及以后的数字
numbers2 = numbers[2:]
print(numbers2) # [27, 64, 125, 216, 343, 512, 729, 1000]
获取倒数三位的数字
print(numbers[-3:])
遍历切片
for value in numbers[-3:]:
print(value)
数组的复制
numbers_copy = numbers[:]
print(numbers_copy)
numbers.append(0)
print(numbers)
元组
dimensions = (200, 100, 300)
for value in dimensions:
print(value)
print("---------------")
元组数据的访问
print(dimensions[0])
元组中的数据不容修改 eg: dimensions[0] = 23
但是可以重新定义元组
dimensions = (23, 234)
print(dimensions)