Python基础知识点

Python知识点总结

1、print打印时,‘,’连接的有空格;‘+’连接的无空格,但是要用str()转换为字符串;end=''表示不换行输出
2、for i in range(10): i in [0,10)
3、跳转语句
  • continue 语句直接跳到循环的下一次迭代
  • break完全中止循环
  • pass 空语句,占位

4、序列

  • 用于存放多个值的连续的内存空间,并且按一定的顺序排列,每一个位置分配一个数字,称为索引或位置

    1、索引
    • 左边开始的索引从0开始,右边开始的索引从-1开始
    2、切片
    • s[序列开始位置:序列结束位置(不包括该位置):步长(默认为1)]

    • s[st:ed]//s[st-ed)
      
    3、序列相加
    • ‘+’实现两个序列拼接,只能拼接;两个相同类型的东西
    4、乘法
    • 可以实现序列重复拼接

    • 创建序列时可以指定长度

      list=[None]*2//[None,None],None表示什么都没有
      
    5、检查某个元素是否在序列中
    • value (not) in sequence// Ture,False
      
    6、序列的内置函数
    • //不会改变原序列,函数返回一个新的值,定义一个(字符/序列)类型去接收即可。
      len(s),max(s),min(s)
      list(s)//序列转换为列表
      str(s)//序列转换为字符串
      sum(s)//计算元素和
      sorted(s)//排序
      reversed(s)//反向序列中的元素
      /*
      s=[],s.reverse(),print(s),s原序列改变
      s=[],s1=reversed(s),s1是一个生成器对象,通过for循环访问,或者转换为list,tuple等类型。
      */
      enumerate(s)//将序列组合为一个索引序列,多用在for循环中
      

    一、列表

    • 可变序列,列表中的元素可以是整数,实数、字符串、列表、元组
    1、创建与删除
    s=[]//创建空列表
    s=list()//创建数值列表
    del s//删除列表
    
    2、访问列表元素
    print(s)//[,,]打印整体
    print(s[n])//打印单个元素
    s[st:ed]//通过切片访问
    
    3、遍历
    for item in s://遍历出来的是单个元素
    for index,item in enumerate(s)://遍历索引值,元素内容
    
    
    5、增、删、改
    //增
    s.append(item)//列表末尾追加元素item
    s.extend(s1)//将列表s1添加到s
    s.insert(index,item)//向指定位置添加元素
    //删
    del s[num]//根据索引删除
    s.remove(item)//根据内容删除;首先判断内容是否存在,s.count(item),计算元素出现的次数
    s.pop()//返回一个元素并删除
    //改
    s[num]=""//根据索引重新赋值
    
    6、对列表进行计算
    s.count(item)//item在s中出现的次数
    s.index(item)//item在s中首次出现的下标,如果元素不存在,会抛出异常
    sum(s[,start])//
    
    7、排序
    s.sort(key,reverse=(True:降序/False:升序))//这是一个语句
    /*key表示指定从每个元素中提取一个用于比较的元素,eg:key=str.lower,表示在排序时不区分大小写。
    对数值排序从小到大;对英文字母,先大写后小写;对汉字,按照第一个汉字首字母排序
    排序后,原列表元素顺序改变
    s=[],s.sort(),print(s),在原序列上排序
    */
    sn=sorted(s,key,reverse)
    /*排序后,原列表元素顺序不变,为排序后的元素建立一个副本
    s=[],s1=sorted(s),print(s1)即可。
    */
    s.reverse()//逆序
    
    8、列表推导式
    s=[Expression for val in range]//生成指定范围的数值列表
    ns=[Expression for val in list]//根据原列表生成指定需求的新列表
    ns=[Expression for val in list if condition]//从原列表中选择符合条件的组成新列表
    
    9、二维列表
    s=[[],[]]//根据元素内容创建
    s=[]//创建s[M][N]空列表
    for i in range(M):
    	s.append([])
    	for j in range(N):
    		arr[i].append(j)
    s=[[j for j in range(N)] for i in range(M)]//创建s[M][N]空列表,先确定列,再确定行
    

    二、元组

    • 不可变序列,元素类型随便
    1、创建与删除
    t=(1,)//赋值直接创建,元组只有一个值时,不要忘记后面的’,‘;
    t=()//创建一个空元组
    t=tuple()//创建数值元组
    del t//删除元素
    
    2、访问元组元素
    print(t)//打印整个元组
    t[num]//根据索引访问
    t[s:e]//根据切片访问
    for index,value in enumerate(t)//根据索引与内容访问
    
    3、修改
    nt=()//整个组重新赋值
    t=t+nt//连接一个元组,只能是元组
    
    4、元组推导式
    t=tuple(Expression for val in range())
    t=(Expression for val in range)
    /*
    元组推导式生成的结果是一个生成器对象
    访问元素通过t._next_(),类似于指针,遍历完不存在  
    通过 for i in t:,遍历完依旧不存在。
    */
    
    5、列表与元组的区别
    • 列表可变,它的元素可以随时修改,元组不可变,它的元素不可修改,除非整体替换
    • 元组比列表的访问和处理速度快
    • 元组可以作为字典的键,列表不能。

    三、字典

    • 无序的可变序列,内容以“键-值”的方式存在,键是唯一的且不可变的,值可以有多个。
    1、创建与删除
    d={k:v,}//通过赋值直接创建
    d={}//创建空字典
    d={t:s}//通过已经存在的元组和列表创建字典,键只能是元组。
    d=dict()//创空,通过已有数据快速创建字典
    /*
    d=dict(zip(s,t))//使用zip函数将列表或元组对应位置的元素组合为元组
    d=dict(k=v,)//通过给定键值对创建
    d=dict.fromkeys(list)//创建值为空的字典
    */
    
    //删
    del d
    d.clear()//将字典变为空字典
    d.pop()//删除并返回指定“键”
    d.popitem()//删除并返回字典中的一个元素。
    
    2、访问字典
    print(d)//打印访问
    d[key]//通过键,如果指定的键不存在,则会抛出异常
    d.get(key)
    
    3、遍历字典
    d.items()
    /*
    获取字典的“键-值对”列表  
    for item in d.items():
    for key,value in d.items():
    */
    values()//返回字典值
    keys()//返回字典键
    
    4、增、删,改
    //增
    d[key]=value//当元素存在时,相当于修改
    //删
    del d[key]
    
    5、字典推导式
    与列表类似
    d={i:Expression for i in range}
    d={i:j for i,j in zip(s1,s2)}//使用列表推导式
    

    四、集合

    • 无序可变序列,集合有可变和不可变之分。
    1、创建
    s={item,}//输入重复元素,只会保留一个
    ##### s={}//创建空字典,不能创建空集合。
    //字典无序,每次输出的元素的排列顺序可能不同s=set()//创建集合并且也可将其他类型转换为集合
    
    2、增,删
    //增
    s.add(item)//元素只能是字符串、数字、布尔类型的
    //删
    s.remove(value)//元素不存在会抛出异常
    s.pop()//移除一个元素
    s.clear()//清空
    
    3、交集、并集、差集
    &-交
    |-并
    - 差
    
    4、列表、元组、字典、集合的区别
    数据结构 可变 重复 有序 符号
    列表(list) []
    元组(tuple) ()
    字典(dic) {k:v}
    集合(set) {}

5、字符串

一、字符串常用操作

1、拼接
’+‘
2、计算长度
len(s)
/*
数字,英文,小数点、下划线、空格占一个字节
汉字占2-4个字节(GBK-2)(UTF-8-3/4)
*/
3、截取
s[st:ed:step]
4、分割、合并字符串
s.split(分割符,分割次数)//如果没有指定分隔符,也不能指定分割次数
s1=分隔符.join(iterable)
/*
将多个字符串采用固定的分隔符连接在一起
iterable表示可迭代对象
第一个迭代元素前不加分隔符
*/
5、检索
s.count(sub[st,ed])//一个字符串在另一个字符串中出现的次数
s.find(sub[st,ed])//子字符串在字符串中首次出现的位置,不存在的识货返回-1
s.index(sub[st,ed])//找位置,不存在抛出异常
s.startwith(pre[st,ed])//字符串是否以指定字符串开头
s.endwith(suf[st,ed])//字符串是否以指定字符串结尾
6、大小写转换
s.lower()
s.upper()
7、去空格和特殊字符
s.strip(chars)//去掉字符串左右两侧的空格和特殊字符
s.lstrip(chars)//去掉字符串左侧的空格和特殊自促
s.rstrip(chars)//去掉字符串右侧的空格和字符串
8、格式化
‘%[-][+][0][m][.n]格式化字符串’%exp
- 左对齐,正数前方无符号,负数前面加负号
+ 右对齐,正数前方加正号,负数前方加负号
0 右对齐,正数前方无符号,负数前方加负号
m 占有宽度
.n 表示在小数点后保留的位数
格式化字符串 %s,%c,%d,%x,%f,%r,%o,%e,%E,%%
exp 要转换的项

s.format(args)
//s 模板,{[index] [ : {[[fill]align] [sign] [#] [width] [.precision] [type]}
args要转换的项

全部评论

相关推荐

头像
不愿透露姓名的神秘牛友
03-13 10:56
点赞 评论 收藏
转发
点赞 收藏 评论
分享
牛客网
牛客企业服务