pythonPython基础教程
⼀ 写在前⾯
未经允许,不得转载,谢谢~~
接触Python应该有⼀年多的时间了,凭借着C++的经验也没有认真地系统地学习过Python就直接上⼿了~
⽬前⽤的还算可以,但总觉得不够,都说磨⼑不误砍材⼯,感觉还是很有必要重新系统地学习⼀下。
本⽂主要参考书本:Magnus Lie Hetland著,司维等⼈译的Python基础教程。在这⾥做个主要的笔记记录,并不会包含所有的知识点哦,像python的安装,加减法这样的就不写上来浪费⼤家的时间了,当然太细节的东西也只需要⽤到的时候再去学就可以了。
chap 1 基础知识大学python入门教程
1.1 基础数字和表达式
1. 算数表达
除法:/
整除://
取余:%
2. 变量
python的变量⾮常的灵活;
变量名可以包括字母、数字和下划线,但是不能以数字开头;
3. 函数
常⽤内建函数例如:abs()pow()round()
4. 模块
直接导⼊模块 import model,然后使⽤model.function调⽤函数
直接导⼊模块中的函数from model import function
1.2 字符串
1. 字符串表⽰
str(): 把值转换成合理形式的字符串
repr():以合法的python表达式的形式来表⽰值;
2. 数据输⼊
input(): 假设⽤户输⼊的是合法的python表达式;
raw_input():所有的输⼊当成原始输⼊;
3. 长字符串表⽰
⽤三个引号'''代替普通引号;
或者⼀⾏中的最后⼀个字符是反斜线\sekurity
4. 原始字符串
就是其中的转义字符不起作⽤,该是什么样,就是什么样;
原始字符串以r开头;
chap2 列表和元祖
两者的主要区别在于列表可以修改,⽽元祖不能;
序列本⾝也可以包含其他的序列;
2.1 通⽤序列操作
所有的序列都包含索引、分⽚、加、乘、检查元素是否存在等操作。
除此,python还具有计算序列长度、出最⼤最⼩元素的内建函数。
1. 索引
字符串就是由字符组成的序列,以此为例:greeting='Hello'
索引值从第⼀个数0开始,greeting[0]='H'
负数索引,从最后⼀个数-1开始,greeting[-1]='o'
2. 分⽚
⽤于访问⼀定范围内的元素;
通过:相隔的两个索引来实现;
numbers=[0,1,2,3,4,5,6,7]
numbers[3:6]=[3,4,5]
第⼀个索引值包括在边界内,第⼆个索引值不包括在边界内;;
例:访问最后3个元素numbers[-3:-1] 或者直接numbers[-3:],将最后⼀个置空。
以上的步长都是默认设置为1的;
显⽰指定步长:numbers[1:6:2] 从第1个(包括)到第6个(不包括)中每2个元素的第⼀个;
显⽰指定负步长:numbers[6:1:-2]从第6个(包括)到第1个(不包括)每2个元素的第⼀个;
3. 序列相加
+可以直接将序列相加;
但是必须是同个类型的数据;
4. 乘法
'hello'*3=‘hellohellohello’
reified kotlin[21]*3=[21,21,21]
可以⽤来初始化空列表:sequence=[None]*10
5. 成员资格
检查元素是否在内
in
在则返回True
不在则返回False
6. 长度、最⼤值和最⼩值
python的内建函数
len() 序列中所含元素数量;
min() 序列中最⼩值;
max()序列中最⼤值;
2.2 列表:python的‘苦⼒’
列表不同于元祖和字符串的地⽅:列表是可变的。
1. list函数
list()可以根据字符串创建列表;
例:list['hello']=['h','e','l','l','o'];
list适⽤于所有类型的序列,不只是字符串;
2. 基本的列表操作
所有序列的标准操作:索引、分⽚、加、乘、长度等列表都适⽤;
⼀些可以改变列表的⽅法:元素赋值、元素删除、分⽚赋值、列表⽅法;
元素赋值:x[1]=2
删除赋值:del x[1]
分⽚赋值:x[2:]=list('hello')
列表⽅法:⽅法是与某些对象有紧密联系的函数,调⽤⽅式:对象.⽅法()
printf源代码.append() 在列表末未追加元素;
.count() 统计某个元素出现的次数;
.extend() 可以⽤新列表扩展原有列表;
.
index() 出列表中某个值第⼀个匹配项的索引位置;
.insert() 将对象插⼊到列表中;
.pop() 移除列表中的⼀个元素(默认是最后⼀个),并返回元素值;
结合使⽤.append()和.pop()就可以实现栈。
.remove() 移除列表中某个值的第⼀个匹配项。
.reserve() 将列表中的元素反向存放。
.sort()在原来的位置上对列表进⾏排序,默认从⼩到⼤。如果需要保留原来的x,需要⽤y=x[:]深度复制x的值,然后对y排序。注意y=x是没有⽤的,是浅复制。
2.3 元祖:不可变序列
如果⽤逗号分隔了⼀些值,就⾃动创建了元祖。
elsa怎么读
1,2,3=(1,2,3)
元祖是通过圆括号括起来的。
空元祖:()
只有⼀个值的元祖:42,=(42,) 必须有逗号
1. tuple函数
与列表的list函数基本⼀致。
把序列做为参数并将其转换为元祖
tuple([1,2,3])=(1,2,3)
2. 基本元祖操作
创建元祖:x=1,2,3
访问元祖:x[1]
3. 可否替代
⼀般来说,⼤多事sequence都由list满⾜;
但是元祖可以在映射中当成键来使⽤,但列表不⾏;
元祖作为很多内建函数和⽅法的返回值存在,这些时候就必须对元祖进⾏处理。chap3 使⽤字符串
3.1 基本字符串操作
互斥信号量mutex
所有序列的标准操作:索引、分⽚、加、乘、长度、取最⼤最⼩等对字符串都适⽤;
但是字符串是不可变的。
3.2 字符串格式化
%s 格式化成字符串
%f 格式化成浮点数
%.3f 格式化成浮点数,并保留3位⼩数
%C 格式化成单字符
%i 格式化成带符号的⼗进制整数
3.3 字符串⽅法
1. .find()
在⼀个较长的字符串中查⼦字符串,返回⼦串所在位置的最左端索引;
若没有则返回-1;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。