#操作语句
#for循环遍历
# for 变量名 in 列表名 :(冒号)
# 打印输出
#for循环语句之后 每行缩进的代码都是循环的一部分
humans = ['fan','ren','long','jie']
for fa in humans:
print(fa)
print('循环')
print('不循环,循环结束')
#避免缩进错误,严格遵循缩进规则
#python通过缩进判断代码行与前一个代码行之间的关系
##4.3 range()函数创建数值列表
#for 变量名 in range(begin , end) 遵循左闭右开原则
for num1 in range(1,5):#输出1~4
print(num1)
print(list(range(1,6)))#打印列表
#使用列表
arr1=list(range(1,9))
print(arr1[-1])
#range函数包含三个参数(起始值,结束值,步长)其中步长是指起始值不断加上步长输出,直到大于等于结束值
#sample 输出10以内的偶数
for arr2 in range(2,11,2):
print(arr2)
#实现1~10的平方 使用列表,append()实现
arr3=[]#创建一个空列表
for num2 in range(1,11):
arr3.append(num2**2)
print(arr3)
#对数字列表的简单函数
print('数字列表')
#min(列表名) max(列表名) sum(列表名)
arr4 = [1,2,3,4,5,6,9]
print(min(arr4))
print(max(arr4))
print(sum(arr4))
##列表解析 : 将for循环和创建新元素的代码合并为一行
#这部分属于进阶了,加深记忆
print('列表解析')
arr5=[num3**3 for num3 in range(1,11)]
#列表名 = [临时变量表达式 for 临时变量 in range(1,11) ##这个结尾没有冒号‘:’
print(arr5)
#切片
print('切片在这里')
#sample
arr6 = ['a','b','c','d','e','f','g']
print(arr6[0:-1:2])
#同样遵循左闭右开,三个参数,可以省略,[起始值:end:步长]
#使用for循环输出前三个元素 可以用于数组排序后输出连续几个极值
for rw in arr6[:3]:
print(rw)
print('复制列表在这里')
#第一种
arr7 = arr6
print(arr7)
arr6.append('fan')
arr7.append('ren')
print(arr6)
print(arr7)
#这里表明这种复制方法实质是将两个列表关联,对其中任何一个列表操作,另一个列表发生相应的变化
print('上面这种方法不好')
#第二种 利用切片实现
# arr6 = ['a','b','c','d','e','f','g','fan','ren']
arr8 = arr6[:]
arr6.append('我')
arr8.append('wakakaka')
print(arr6)
print(arr8)
#注意格式 列表名 = 列表名[:] 这里切片省略了参数,意为遍历整个数组
print('元组')
#元组 格式类似与列表
arr9 = (1,29)
print(arr9[:])
print(arr9)#这两种输出方法都可以
# print(arr9[0] = 12) 报错,因为元组内元素不可改变
#元组不可修改元素,但是,但是 可以整个替换
arr9 = (3,89)
print(arr9)