Python 学习(1):基础知识点
来源:互联网 发布:神反转的故事知乎 编辑:程序博客网 时间:2024/05/22 03:06
忙忙碌碌的研究生生活开始了,因为学习需求,学习一下Python。接下来的几天会很快的刷一下语法。这是第一篇。
列表
列表由一系列按特定顺序排列的元素组成。
基本操作
定义方式:
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
访问方式
print(bicycles)
输出结果
['trek', 'cannondale', 'redline', 'specialized']
访问列表内部元素(下标访问,从零开始)
print(bicycles[0])
支持倒数访问
print(bicycles[-1]) # 访问最后一个元素print(bicycles[-2]) # 访问倒数第二个元素
添加元素
bicycles.append('test')
插入元素
bicycles.insert(0, 'test2') # ‘0’表示插在列表开头,后面的元素下标依次向后推一个。
删除元素
del bicycles[1] # 删除列表的第二的元素
pop()
方法pop()可删除列表末尾的元素,并让你能够接着使用它。弹出(pop)源自这样的类
比:列表就像一个栈,而删除列表末尾的元素相当于弹出栈顶元素。
testpop = ['aa','bb','cc','dd']print(testpop)ret_pop = testpop.pop()print(testpop)print(ret_pop)
结果输出
['aa', 'bb', 'cc', 'dd']['aa', 'bb', 'cc']dd
通过传入索引可以弹出对应的元素
ret_pop = testpop.pop(2)print(testpop)print(ret_pop)
结果输出
['aa', 'bb', 'cc', 'dd']['aa', 'bb', 'dd']cc
通过内容删除元素
testpop.remove('cc')
组织列表
排序
testpop = ['aa','dd','bb','cc']testpop.sort()print(testpop)
默认回根据ASCII码排序(从小到大)。reverse=True
参数可以改变方向。sorted(testpop)
会把排序结果返回,并不会改变原来的列表。也可称之为临时排序。
确定列表长度
通过len()
函数返回长度
testpop = ['aa','dd','bb','cc']print(len(testpop))
操作列表
循环遍历
testpop = ['aa','bb','cc','dd']for element in testpop: print(element)
输出结果
aabbccdd
通过代码缩进关系表示一个循环包含的内容
数值列表
创建
for value in range(1,5): print(value)
输出结果
12345
所以range(),生成的值包含开头不包含结尾。
numbers = list(range(1,6))print(numbers)
可以创建一个数字列表。
另外range()可以传入第三个参数来控制步子长,即数字的间隔
print(list(range(1,20,3)))
输出
[1, 4, 7, 10, 13, 16, 19]
统计操作
min()
、max()
、sum()
三个函数可以对数值列表进行取小、取大、求和操作。
列表解析
squares = [value**2 for value in range(1,11)]print(squares)
输出
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
要使用这种语法,首先指定一个描述性的列表名,squares;然后,指定一个左方括号,并定义一个表达式,用于生成你要存储到列表中的值。在这个示例中,表达式为value**2,它计算平方值。接下来,编写一个for循环,用于给表达式提供值,再加上右方括号。
切片操作
截取
切片操作可以简单快速的提取列表中的元素。类似于Matlab中的语法操作。
test = ['aa','bb','cc','dd','ee']print(test[0:3])
输出结果
['aa', 'bb', 'cc']
值得注意的是,类似于range()操作。切片的元素包含开头不包含索引。也就是说[0:3]切出的元素是0,1,2
三个元素
[a:b]可以省略参数,[:3]省略第一个参数表示从开头截取,[2:]省略第二个元素表示截取到结尾。同事也支持传入负数
表示列表从后向前的索引序号。
遍历
test = ['aa','bb','cc','dd','ee']for element in test[1:4]: print(element)
输出结果
bbccdd
复制
如果直接执行test2 = test
这样的语句,两个变量名会指向同一个列表,修改其中的一个列表中的元素会影响另一个列表的元素(其实就是同一个列表)。如下代码
test = ['aa','bb','cc','dd','ee']test2 = testprint(test)print(test2)test2[0] = 'AA'print(test)print(test2)
输出结果
['aa', 'bb', 'cc', 'dd', 'ee']['aa', 'bb', 'cc', 'dd', 'ee']['AA', 'bb', 'cc', 'dd', 'ee']['AA', 'bb', 'cc', 'dd', 'ee']
这样并不是真正意义上的复制
复制可以借助切片的方式来操作。并且可以控制复制的范围。同时[:]省略前后=参数表示全部复制。
test = ['aa','bb','cc','dd','ee']test2 = test[:]print(test)print(test2)test2[0] = 'AA'print(test)print(test2)
输出结果
['aa', 'bb', 'cc', 'dd', 'ee']['aa', 'bb', 'cc', 'dd', 'ee']['aa', 'bb', 'cc', 'dd', 'ee']['AA', 'bb', 'cc', 'dd', 'ee']
可以看到这样的操作后,两个变量名对应着两个列表,修改其中一个不会影响另一个列表的内容。
元组
列表的元素内容可以随时修改,但是元组的内容无法修改
定义
test = ('aa','bb','cc','dd','ee')test[0] = 'AA' # 错误代码 内容无法修改
遍历
方法和列表相同
修改元素
元组的内容无法直接修改,但是可以通过重新赋值的方式改变
test = ('aa','bb','cc','dd','ee')print(test)test = ('AA','bb','cc','dd','ee')print(test)
- Python 学习(1):基础知识点
- Python基础学习--记录知识点
- Python 学习(2):基础知识点
- Python 学习(3):基础知识点
- Python 学习(4):基础知识点
- python基础知识点(1)
- Python学习笔记(基础知识点一)
- Python学习篇 之 基础知识点
- python初步学习知识点1
- python简单知识点学习1
- Python 基础知识点
- python基础知识点
- Python基础知识点总结
- Python 基础知识点 001
- python基础知识点
- Python 基础知识点整理
- python基础知识点
- python基础知识点总结
- 深入理解SELinux SEAndroid
- 推箱子
- A+B Problem
- Python学习 (1)从IDLE启动Python
- set集合遍历方法
- Python 学习(1):基础知识点
- AVL树
- 服务器控件智能提示不起作用的解决办法
- Linux中大文件分割split和合并cat文件笔记
- Java 进阶:异常影响性能吗?
- 【Java】:args
- Quick Start for Yii2
- Python 学习(2):基础知识点
- ActiveMQ系列—ActiveMQ集群方案(下)(热备方案)