- '''
- 本篇是Range和Slice的扩展篇
- '''
- #coding = utf-8
- def rsExt():
- # range
- # 最基本的range
- print("打印0到99的自然数:")
- numunder100 = range(0, 100) # 0到99的自然数
- for n in numunder100:
- print(n)
- print("-------------------------")
- # range可以带三个参数,第三个参数表示步长,默认步长为1。注意步长不能为0
- print("步长为2的range,范围为1到9:")
- rangewithstep = range(1, 10, 2) # 步长为2
- for r in rangewithstep:
- print(r)
- print("-------------------------")
- print("步长为-1的range,范围为10到2:")
- rangewithstep2 = range(10, 1, -1)
- for r in rangewithstep2:
- print(r)
- print("-------------------------")
- # range也可以只有一个参数,如range(5)等价于range(0, 5)
- print("只有一个参数的range:")
- rangewithin5 = range(5)
- for r in rangewithin5:
- print(r)
- print("-------------------------")
- # list切片扩展(扩展"步长"参数)
- print("slice扩展:")
- array = [1, 6, 3, 4, 5, 2, 7]
- print(array[:0:]) # 取0个元素
- print(array[:1:]) # 取1个元素
- print(array[:2:]) # 取2个元素
- print(array[:3:]) # 取3个元素
- print(array[:len(array):]) # 复制整个list
- print(array[::1]) # 复制整个list
- print(array[::2]) # 步长为2地取list的元素到新list
- print(array[::3]) # 步长为3地取list的元素到新list
- print(array[::-1])# list逆转
- print("-------------------------")
- # 使用Python中的range和快速交换变量实现冒泡排序
- n = len(array)
- for i in range(0, n):
- for j in range(0, n-i-1):
- if array[j] > array[j+1]:
- array[j], array[j+1] = array[j+1], array[j]
- print("冒泡排序完成后数组为:")
- print(array)
- print("-------------------------")
- def main():
- rsExt()
- if __name__=='__main__':
- main()
- #该片段来自于http://www.codesnippet.cn/detail/170720134647.html
来源: http://www.codesnippet.cn/detail/170720134647.html