设为首页 收藏本站
查看: 849|回复: 0

[经验分享] 初学python的一些基础知识

[复制链接]

尚未签到

发表于 2018-8-13 09:13:41 | 显示全部楼层 |阅读模式
  字符串类 str
  upper() 所有字母大写
  bit_length()  当前数字的2进制至少用几位来表示
  capitalize()  首字母大写
  lower() 所有字母小写 只能英文 casefold()特殊字符也可以
  center(20,'#') 设置宽度,空白位置填充,把字符串放中间
  count('n',5,6) 去字符串中寻找子序列出现的个数
  startswith(),endswith() 什么开头,以什么结尾
  find('n',8,9)在字符串中查找某个特定的字符,然后报出第几位,从0位开始
  expandtabs(8) 把字符串中的'\t'和'\t'之前的字符一共补成8位
  format() 格式化占位符
  format_map({}) 格式化占位符
  isalnum() 判断字符串中是否有数字和字母
  isalpha() 判断是否有字母
  isdecimal()判断是否有数字
  swapcase() 大小写转换
  isspace()是否全是空格
  title() 转换城标题样式 istitle()判断是否是标题
  join() 将字符串中的每个元素按照指定分隔符拼接
  ljust(10,'')和rjust(10,'')在字符串右边和左边添加
  strip() lstrip()rstrip()去除空白,换行,或者去掉某个字符,优先最多匹配
  replace() 将字符串内的字符替换掉
  列表 list
  append() 不需要变量接收,直接追加到元列表末尾
  count()计算列表内某个元素出现的次数
  extend() 和append不一样,它是把可迭代对象迭代下,在追加到列表
  index() 根据列表里的元素确定索引
  insert(3,11) 在列表指定位置插入
  pop删除某个值,并且获取删除的值,可以增加索引
  remove() 直接把列表内某个元素删除,不返回删除的元素,从左边优先
  del() 也是删除,也可以通过索引莱删除 clear()是清空列表
  reverse()当前列表翻转
  sort()从小到排序sort(reverse=True),从打到小排
  字符串的创建后里面的值不能修改,但是列表的可以
  tuple()元祖可以迭代,就是值不能更改
  字典dict
  字典for循环默认是key,有.keys() .values()
  for k,v in info.items(): 把字典里的key和values取出来
  key值不能重复
  dict.fromkeys([],123)根据序列来创建字典,并且生成统一的值
  get('sdf',11)根据key获取值,key不存在可以指定默认值
  pop('fsa',90)指定key删除并且返回 popitem随机删除
  setdefaulult('sdaf','asdf'),当key值不存在就添加,存在就把值获取
  update({'asd':'asda'})或者update(k1=123,k2=12,k4='sadfs') 更新字典有的覆盖,没有添加
  enumerate(apple,1) 打印字典里第一层所有的key,并且从数字1开始排序
  set()是集合,里面定义不可变的元素,打印出来的是不重复的
  global()可以把局部变量改为全局变量
  lambda 形参名:逻辑关系
  高阶函数:1传入的参数是函数 2返回值中包含函数
  map本身就是一个for循环,处理的是可迭代对象,逻辑运算,map()处理序列中的每个元素,得到的结果是一个‘列表’,该‘列表’元素个数及位置与原来一样
  filter()函数 本身就是一个for循环,遍历的是可迭代对象,但是函数部分处理的结果是布尔值,如果为ture则保留,逻辑判断,filter遍历序列中的每个元素,判断每个元素得到布尔值,如果是True则留下来
  reduce要从functools模块中导入,能设定初始值,就是说我可以设定一个函数从几开始执行数据,reduce:处理一个序列,然后把序列进行合并操作
  abs()取绝对值
  all() 将列表中所有元素判断布尔值,0 None  ‘’空字符串都是false
  any()
  只要有一个是真就是ture
  bin()十进制转二进制 hex()十进制转16进制 oct()10进制到8进制
  bool()判断布尔值
  bytes()把字符串转换为字节,encoding='utf-8'
  decode()解码decode('utf-8')
  char()打印阿斯玛表
  dir()打印某一个对象下面有哪些方法
  divmod() 取商得余
  eval()把字符串的数据结构提取出来,把字符串中的数学运算做一遍
  hash()可hash的数据类型是不可变的,不可hash是可变的,是不能反推的,唯一的
  help()查看方法怎么用
  isinstance()判断对象是不是什么类型
  locals()打印局部变量
  max()最大值min()最小值 ,不同类型不能比较,
  zip()传两个参数,是可迭代类型,然后一一对应
  print(list(max(zip(p.values(),p.keys()))))  print(max(people,key=lambda a:a['age']))
  pow( x,y,z)x的y次方对Z取余
  reversed 反转
  slice(3,5) 定义切片
  sorted()排序  print(sorted(name_dic,key=lambda key:namedic[key]))根据values的大小把key显示出来
  字典for循环的是key值
  文件操作,r读 w创建,覆盖 a追加,创建
  b模式是用未编码的字符来处理,所以rb出来的内容需要用decode('utf-8')来解码,wb,我们写进去的是字符串类型,需要用byetes('ad',encoding='utf-8')或者encode('utf-8')来编码为二进制,linux系统默认就是二进制,不需要编码
  读取文件编码不知道的情况下,是一定会乱码,用latin-1编码,会尽可能保留文件内容
  fllush()刷新文件 tell()文件里光标所在的位置
  seek(0)用来控制光标的移动,只要不是read其余都是字节,read是占3个字节
  truncate(10)截取  用w+不可以的,截取0-10个字符的内容,其余都删掉,是写操作
  循环文件的方式,for i in f.readlines 这样循环会把文件所有内容全读出来,for i in f 你要一行给你一行,不会占用太大内从
  for循环,迭代器用iter()协议,next()来显示值,内置函数next就是遵循这个
  yield是生成器就是把iter()协议进行封装,它比列表解析更省内存
  装饰器:本质就是函数,为其他函数添加附加功能
  原则:
  1.不修改被装饰函数的源代码
  2不修改被修饰函数的调用方式
  闭包:函数嵌套 将变量封装
  取列表得开头和结尾,a,*,c=列表,两个值交换 a = 1 b =2  a,b=b,a a=2 b = 1

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-550968-1-1.html 上篇帖子: Python 中的 if __name__ == '__main__' 该如何理解 下篇帖子: python利用selenium操作浏览器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表