Python知识点汇总
2018-03-10 15:14
393 查看
python的一个特点:
一个对象对应一个ID;(C语言中一个变量对应一个ID,改变变量的值,其ID不变)
有些ID里存放的对象内容不可改变,内容变了就是另一个对象了,对应另一个ID;
有些ID里存放的对象内容可以改变的;
1.python 没有自增自减运算符 python 中,变量是以内容(对象)为基准而不是像 c 中以变量名为基准;变量名是对”对象“的引用,一个对象可同时被多个不同的变量引用;python 中,类型属于对象,变量是没有类型的,仅仅是一个对象的引用(一个指针);
当通过一个变量名改变其引用的对象内容后,其他引用该对象的变量其对象内容也随之发生改变,但是ID保持不变。
del list[2]3.python中的字符串可以当做列表来使用
string.strip(char) #依次删除字符串首尾中指定的字符(串),只能作用于首尾。
#该函数返回新字符串,原字符串无变化,遵循字符串是不可变类型对象
string.split() #默认按空字符,包括空格、换行(\n)、制表符(\t)等来分割string
string.split(char,num) #按指定的字符char分割num次;
#该函数返回一个列表
string.replace(old,new) #将字符串中的所有的 old(旧字符串) 替换成 new(新字符串)
string.replace(old,new,max) #max为最大替换次数
#该函数返回新字符串
str.lower()
str.upper()
str.rjust(length) #字符串右对齐,左边补空格生成新的字符串,length表示新字符串的长度;类似的还有:str.ljust();str.center();
str.zfill(length) #在字符串左边填充0生成新的字符串
str.format() #将str中用{}括住的部分依次用format()中的参数替换;{}中若自定义有键,format()的参数定义格式为:自定义键=值
'{} {} {}'.format("1","2","3")
'{a} {b} {c}'.format(a="1",b="2",c="3")
'{0} {1} {2}'.format("1","2","3") #默认键为0,1,2...
'{0:10d} {1:.2f} {2:5.2f}'.format(1,2,3) # :后面为格式化符号
str.rfind(s) #返回字符串最后一次出现的位置(从右向左查询),如果没有匹配项则返回-1
4.列表常用的一些方法:
删除元素del,截取[:],拼接+,迭代遍历,追加元素append(),插入insert(),计算长度len(),复制*,判断元素是否存在,清空元素clear(),元素排序sort(),颠倒元素顺序reverse(),取出最后一个元素pop()
7.集合
定义集合使用{ , } 或 set()函数,不能直接使用()
定义时,{ , }中若是单个元素则为集合;{ , }中若是键值对则为字典
s=set(list) #set()将一个列表转化为集合,自动删除重复的元素
s.add(5)
s.remove(1)8.字典特有的一些方法:
...
return
return [表达式] 语句用于退出函数,选择性地向调用方返回一个表达式。
不带参数值的return语句返回None。
15.python中的对象类型可分为不可变类型(如整数、字符串、元组)和可变类型(如列表、字典)不可变类型对象:不能通过变量(指针)修改该对象的内容,即该对象是一个整体
可变类型对象:能通过变量(指针)修改该对象的内容
可变类型对象作为函数参数时,其内容可在函数中被改变;
16.python中的推导式列表推导式:[[模式 for var1 in seq1] for var2 in seq2 ...] #前面是内层,后面是外层
元组推导式:(模式 for var1 in seq1)
集合推导式:{模式 for var1 in seq1}
字典推导式:{模式 for var1 in seq1}17.python中的正则表达式
re 模块使 Python 语言拥有全部的正则表达式功能。
#re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。
re.match(pattern, string, flag) #flag 用于控制正则表达式的匹配方式
#re.search 扫描整个字符串并返回第一个成功的匹配。
re.search(pattern, string, flag)
一个对象对应一个ID;(C语言中一个变量对应一个ID,改变变量的值,其ID不变)
有些ID里存放的对象内容不可改变,内容变了就是另一个对象了,对应另一个ID;
有些ID里存放的对象内容可以改变的;
1.python 没有自增自减运算符 python 中,变量是以内容(对象)为基准而不是像 c 中以变量名为基准;变量名是对”对象“的引用,一个对象可同时被多个不同的变量引用;python 中,类型属于对象,变量是没有类型的,仅仅是一个对象的引用(一个指针);
当通过一个变量名改变其引用的对象内容后,其他引用该对象的变量其对象内容也随之发生改变,但是ID保持不变。
>>> a = [1, 2, 3] >>> b = a >>> c = [] >>> c = a >>> d = a[:] >>> a, b, c, d ([1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3]) >>> b[0] = 'b' >>> a, b, c, d (['b', 2, 3], ['b', 2, 3], ['b', 2, 3], [1, 2, 3]) >>> id(a), id(b), id(c), id(d) (140180778120200, 140180778120200, 140180778120200, 140180778122696)2.python使用del解除变量对“对象”的引用,或者使用del删除列表中的个别元素list = ['Google', 'Runoob', 1997, 2000]
del list[2]3.python中的字符串可以当做列表来使用
var1 = 'Hello World!' var2 = "Runoob"a = "Hello" b = "Python" print ("var1[0]: ", var1[0]) print ("var2[1:5]: ", var2[1:5])if( "H" in a) : print("H 在变量 a 中") else : print("H 不在变量 a 中") if( "M" not in a) : print("M 不在变量 a 中") else : print("M 在变量 a 中")字符串常用的一些内建函数:string.strip() #在字符串上执行 lstrip()和 rstrip()。依次删除字符串首尾的空格
string.strip(char) #依次删除字符串首尾中指定的字符(串),只能作用于首尾。
#该函数返回新字符串,原字符串无变化,遵循字符串是不可变类型对象
string.split() #默认按空字符,包括空格、换行(\n)、制表符(\t)等来分割string
string.split(char,num) #按指定的字符char分割num次;
#该函数返回一个列表
string.replace(old,new) #将字符串中的所有的 old(旧字符串) 替换成 new(新字符串)
string.replace(old,new,max) #max为最大替换次数
#该函数返回新字符串
str.lower()
str.upper()
str.rjust(length) #字符串右对齐,左边补空格生成新的字符串,length表示新字符串的长度;类似的还有:str.ljust();str.center();
str.zfill(length) #在字符串左边填充0生成新的字符串
str.format() #将str中用{}括住的部分依次用format()中的参数替换;{}中若自定义有键,format()的参数定义格式为:自定义键=值
'{} {} {}'.format("1","2","3")
'{a} {b} {c}'.format(a="1",b="2",c="3")
'{0} {1} {2}'.format("1","2","3") #默认键为0,1,2...
'{0:10d} {1:.2f} {2:5.2f}'.format(1,2,3) # :后面为格式化符号
str.rfind(s) #返回字符串最后一次出现的位置(从右向左查询),如果没有匹配项则返回-1
4.列表常用的一些方法:
删除元素del,截取[:],拼接+,迭代遍历,追加元素append(),插入insert(),计算长度len(),复制*,判断元素是否存在,清空元素clear(),元素排序sort(),颠倒元素顺序reverse(),取出最后一个元素pop()
list.insert(index, obj) list.append(obj) list.clear() list.sort() list.reverse() list.pop() #返回最后一个元素,原列表元素少一 #下面几种用法也适用与字符串,元组,集合,字典 #同时遍历多个列表, 使用zip()将多个列表先打包 for q1, q2 in zip(seq1,seq2): print(q1, q2) #反向遍历一个列表 for q in reversed(seq): print(q) #排序后遍历一个列表 for q in sorted(seq): print(q)5.元组tuple不能修改引用的对象,没有append(), insert(), clear() 方法定义只含一个元素的tuple:
t=(1,) #末尾,不能省 t=(1,2,[3,4]) #其中的列表元素可修改6.tuple用( , )定义,列表用[ , ]定义,字典用{ , }定义
7.集合
定义集合使用{ , } 或 set()函数,不能直接使用()
定义时,{ , }中若是单个元素则为集合;{ , }中若是键值对则为字典
s=set(list) #set()将一个列表转化为集合,自动删除重复的元素
s.add(5)
s.remove(1)8.字典特有的一些方法:
str(dict) #以字符串形式返回整个字典 dict.keys() #以列表形式返回整个字典的键 dict.values() #以列表形式返回整个字典的值 dict.items() #以列表形式返回整个字典的键值对,每个键值对为一个tuple #同时遍历键、值 for k, v in dict.items(): print(k, v)9.python的复合赋值
a, b = 1, 2 a, b = b, a+b10.python中的print()可同时输出多个变量
print(a, b, c) print(a, end=',') #end表示以。。。结尾 print(a, b, c, sep='/') #sep表示以。。。分割11.python中的条件语句
if 条件表达式: pa a566 ss #如果没有内容,可以先写pass,但是如果不写pass,就会语法错误 elif 条件表达式: pass else: pass12.python中的循环语句
while 条件表达式: pass while 条件表达式: pass else: #else只在循环正常终止时执行;若以break语句提前跳出则不执行else部分,下同 pass for var in seq: #var依次等于seq中的每一个元素 pass else: pass13.python中常用的一些内置函数(其他)
range(num) range(start, end) range(start, end, step) round(x,n) #对数字x四舍五入,保留n为小数 input(argv) #读取键盘输入 #文件处理 f=open(filename, mode) #返回一个file对象,该对象可调用其他文件对象的方法 f.read() f.seek(pos) #设置文件当前位置为pos f.tell() #返回一个表示文件当前位置的数字 f.readline() #f.readline() 会从文件中读取单独的一行。换行符为 '\n'。f.readline() 如果返回一个空字符串, 说明已经已经读取到最后一行。 f.readlines() #f.readlines() 将返回该文件中包含的所有行,存为一个列表。 f.writelines([str]) #用于向文件中写入一序列的字符串。一个字符串占据一行。 f.write(argv) f.close()14.python定义函数def 函数名(参数列表):
...
return
return [表达式] 语句用于退出函数,选择性地向调用方返回一个表达式。
不带参数值的return语句返回None。
15.python中的对象类型可分为不可变类型(如整数、字符串、元组)和可变类型(如列表、字典)不可变类型对象:不能通过变量(指针)修改该对象的内容,即该对象是一个整体
可变类型对象:能通过变量(指针)修改该对象的内容
b = 10 b = 2 #b指向了另一个新的对象,并不是改变了原对象 a = [1,2,3] a[0] = 'hello' #a仍然指向原对象,并通过指针修改了原对象的内容不可变类型对象作为函数参数时,其内容不可被函数改变;
可变类型对象作为函数参数时,其内容可在函数中被改变;
16.python中的推导式列表推导式:[[模式 for var1 in seq1] for var2 in seq2 ...] #前面是内层,后面是外层
元组推导式:(模式 for var1 in seq1)
集合推导式:{模式 for var1 in seq1}
字典推导式:{模式 for var1 in seq1}17.python中的正则表达式
re 模块使 Python 语言拥有全部的正则表达式功能。
#re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。
re.match(pattern, string, flag) #flag 用于控制正则表达式的匹配方式
#re.search 扫描整个字符串并返回第一个成功的匹配。
re.search(pattern, string, flag)
相关文章推荐
- [python] Python小知识点汇总
- Python知识点汇总
- Python开发一个csv比较功能相关知识点汇总及demo
- Python常用知识点汇总
- python开发中用到的知识点汇总---不断更新中
- Python中的列表知识点汇总
- Python常用知识点汇总
- python知识点汇总
- 小白到大神,Python 密集知识点汇总
- 在Python中处理日期和时间的基本知识点整理汇总
- Python知识点汇总
- 史上最全Python知识点汇总【续】
- 在Python中处理日期和时间的基本知识点整理汇总
- Python 学习过程一些小的知识点汇总 备忘
- Python 密集知识点汇总
- Python常用知识点汇总
- 操作系统知识点汇总
- numpy知识点大全及如何用python作图
- 机器学习数据挖掘-软件、网站、课程资源知识点汇总
- Java 对象序列化与反序列化知识点汇总