---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

sorted()

sorted(iterable[, cmp[, key[, reverse]]])

iterable -- 可迭代对象

cmp -- 比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回0

key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序

reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

type()函数

type() 方法的语法:class type(name, bases, dict)

name -- 类的名称

bases -- 基类的元组

dict -- 字典,类内定义的命名空间变量。 一个参数返回对象类型, 三个参数,返回新的类型对象

PS:(isinstance() 与 type() 区别: type() 不会认为子类是一种父类类型,不考虑继承关系。 isinstance() 会认为子类是一种父类类型,考虑继承关系。 如果要判断两个类型是否相同推荐使用 isinstance())

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

setdefault()

dict.setdefault(key, default=None)

key -- 查找的键值 default -- 键不存在时,设置的默认键值(如果字典中包含有给定键,则返回该键对应的值,否则返回为该键设置的值)

dic[key][key].setdefault(key,default) 利用字典切片将键值增加进嵌套dic中

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

open()函数 和 write()函数

我们以任何方式使用文件,哪怕是仅仅打印其内容,都得先打开文件,这时候我们就需要open函数

filename = r'路径\文件名称'   #这个称为绝对路径 ,由于反斜杠在python中视为转义标记,所以当读取路径是发生错误,可以在路径的’单引号’前加上r,r就是以原始字符串的方式指定路径

with open(filename, ‘ ’) as file : #读取和写入文件的语法

with() -- 关键字,意思就是在不再需要访问文件后将其关闭

open() -- 打开函数

filename -- 文件的名称或者一个带有文件路径的变量

as -- 关键字

file -- 就是将文件打开后放入这个变量中供输出和调用

PS:也可以在filename的后面增加一个参数,如 ‘w’ 写入模式、‘r’ 读取模式、‘a’ 附加模式、‘r+’ 读取和写入模式

PS: 写入模式会覆盖文件原有的内容,附加模式不会覆盖而是在原文本后面增加内容

PS:读取和写入模式语法的最后有一个 ‘ :’,这个标点也是语法的关键字

PS:python只在当前执行文件.py所在的目录中查找文件,如果需要打开的文件在当前目录的子目录中,可以在括号内指定文件夹名和文件名,称为即相对路径with open(‘text_files\filename.txt’)as file

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

lambda()匿名函数

在Python中,lambda的语法是唯一的

语法:lambda argument_list: expression 其中,lambda是Python预留的关键字,argument_list和expression由用户自定义

argument_list是参数列表。expression是一个关于参数的表达式。表达式中出现的参数需要在argument_list中有定义,并且表达式只能是单行的

lambda函数有如下特性:

lambda函数是匿名的:所谓匿名函数,通俗地说就是没有名字的函数。lambda函数没有名字

lambda函数有输入和输出:输入是传入到参数列表argument_list的值,输出是根据表达式expression计算得到的值

lambda函数一般功能简单:单行expression决定了lambda函数不可能完成复杂的逻辑,只能完成非常简单的功能。由于其实现的功能一目了然,甚至不需要专门的名字来说明

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

format()

这个函数同理占位符,也是用来格式化传入参数的作用,但是格式和原理不同

几种方式

msg='my name is {name} my age is {age}'.format(age=18,name='egon') #这个利用format()函数来传入

msg='my name is {} my age is {}'.format(18,'egon')   #利用format传入,如果没有指定传入参数,那就按照位置传入,有点类似占位符%的原理

msg='my name is {0} my age is {0}{1}{1}'.format(18,'egon')  #利用format传入,在想要传入值得位置写入数字,那就按照数字的排序对应format括号里值得位置排序传入

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

fromkeys()  将列表和元组迅速创建成字典

Python 字典 fromkeys() 函数用于创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值,可以将列表元组的值变成key并且对应一个None的值

romkeys()方法语法:dict.fromkeys(seq[, value])  #这里value可以设为默认None,然后再将需要的值传入

seq -- 字典键值列表。

value -- 可选参数, 设置键序列(seq)的值

PS:该方法返回一个新字典

例:

seq = ('Google', 'Runoob', 'Taobao')

dict = dict.fromkeys(seq)

print "新字典为 : %s" % str(dict)

dict = dict.fromkeys(seq, 10)

print "新字典为 : %s" % str(dict)

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

关键字: global \ nonlocal
如果想要在局部修改全局名字对应的值是不可变类型时.必须在局部用global关键字加以声明
x=111
def func():
 global x
 x=222
PS:在global申明x后,则全局的x原有值111变成了222

如果想要在局部修改全局名字对应的值是不可变类型时.必须在局部用global关键字加以声明

x = 111

def func():

  h = 222

  def boo():

    y = 444

    nonlocal h

    h=333

PS:这里局部函数内声明要修改局部参数h的值,则会开始一层一层查找,直到找到匹配的,如果未找到则报错

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

模块调用的时候不运行模块内的调用命令,作为导入调用,而不是右键运行

if __name__ == __main__:

  func()

  func()  #这样在导入模块的时候不会运行文件内执行代码

PS:当xxx.py文件被当成脚本文件直接运行时(右键直接运行的文件就是脚本文件)__name__的值为__main__

PS:当xxx.py文件被当成模块导入时__name__的值为模块名

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

struct模块(用于网络传输的字节转换模块)

用处
1、按照指定格式将Python数据转换为字符串,该字符串为字节流,如网络传输时,不能传输int,此时先将int转化为字节流,然后再发送
2、按照指定格式将字节流转换为Python指定的数据类型
3、处理二进制数据,如果用struct来处理文件的话,需要用’wb’,’rb’以二进制(字节流)写,读的方式来处理文件
4、处理c语言中的结构体

struct模块中的函数

PS:包装的方法由fmt指定。被包装的参数必须严格符合fmt。最后返回一个包装后的字符串

ps:包装后发送的数据是字节流形式,在接收端需要unpack解析后才能获取

struct.pack(fmt,v1,v2,.....)

将v1,v2等参数的值进行一层包装,包装的方法由fmt指定。被包装的参数必须严格符合fmt。最后返回一个包装后的字符串。

struct.unpack(fmt,string)

顾名思义,解包。比如pack打包,然后就可以用unpack解包了。返回一个由解包数据(string)得到的一个元组(tuple), 即使仅有一个数据也会被解包成元组。其中len(string) 必须等于 calcsize(fmt),这里面涉及到了一个calcsize函数。struct.calcsize(fmt):这个就是用来计算fmt格式所描述的结构的大小

PS:打包是什么标准,相对解包也需要同样的标准

PS:解包出来的值是以元组的形式呈现

格式字符串(format string)由一个或多个格式字符(format characters)组成,对于这些格式字符的描述参照Python manual如下

根据fmt的格式,返回需要的字节大小

Python的方法和语法解释的更多相关文章

  1. Python 魔术方法指南

    入门 构造和初始化 构造定制类 用于比较的魔术方法 用于数值处理的魔术方法 表现你的类 控制属性访问 创建定制序列 反射 可以调用的对象 会话管理器 创建描述器对象 持久化对象 总结 附录 介绍 此教 ...

  2. python的方法总结:

    1. Python的字典的items(), keys(), values()都返回一个list >>> dict = { 1 : 2, 'a' : 'b', 'hello' : 'w ...

  3. Python入门篇-基础语法

    Python入门篇-基础语法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.编程基础 1>.程序 一组能让计算机识别和执行的指令. 程序 >.算法+ 数据结构= 程 ...

  4. python 魔法方法诠释

    什么是Python魔法方法 什么是魔法方法呢?它们在面向对象的Python的处处皆是.它们是一些可以让你对类添加"魔法"的特殊方法. 它们经常是两个下划线包围来命名的(比如 ini ...

  5. Python爬虫之xpath语法及案例使用

    Python爬虫之xpath语法及案例使用 ---- 钢铁侠的知识库 2022.08.15 我们在写Python爬虫时,经常需要对网页提取信息,如果用传统正则表达去写会增加很多工作量,此时需要一种对数 ...

  6. Python swapcase()方法

    首先,要明白Python swapcase() 方法用于对字符串的大小写字母进行转换. 其次,了解swapcase()方法语法:str.swapcase() 返回值:返回大小写字母转换后生成的新字符串 ...

  7. Python capitalize()方法

    Python capitalize()方法 capitalize()方法返回字符串的一个副本,只有它的第一个字母大写.对于8位的字符串,这个方法与语言环境相关. 语法 以下是capitalize()方 ...

  8. Python isdigit()方法

    描述 Python isdigit() 方法检测字符串是否只由数字组成. 语法 isdigit()方法语法: str.isdigit() 参数 无. 返回值 如果字符串只包含数字则返回 True 否则 ...

  9. Python str方法总结

    1.返回第一个字母大写 S.capitalize(...) S.capitalize() -> string 1 2 3 4 >>>a = 'shaw' >>> ...

随机推荐

  1. ci框架多语言切换

    1.多语言切换首先配置config文件默认语言 2.创建自己的语言包:language chinese english目录下的语言包文件名必须以  xx_lang.php 可根据自己的需求创建数组: ...

  2. 2-Servlet和servletContext

    2018-08-09   22:34 * Servlet(好好学)  * 动态WEB的资源.   * 什么是Servlet    * 实现Servlet接口,重写5个方法.           * S ...

  3. python-列表,元组,range

    # 列表# lst = ["光头强", 1, True, {}, (1, ), {123}, ["周杰伦",[], "周杰", " ...

  4. 用老毛桃U盘安装:[3]Ghost版Win7系统

    用老毛桃自动安装Ghost版Win7的步骤: 1,到网上先下载Ghost版Win7映像文件到硬盘,我放到的是U盘,盘符为Z,如果你愿意,可直接放到硬盘即可,放到硬盘安装速度会快一点. 2,把制作好的老 ...

  5. caffe,Inception v2 Check failed: top_shape[j] == bottom[i]->shape(j)

    使用Caffe 跑 Google 的Inception V2 对输入图片的shape有要求,某些shape输进去可能会报错. Inception model中有从conv和pooling层concat ...

  6. Linux搭建Hadoop集群---Jdk配置

    三台虚拟机:master slave1 slave2 192.168.77.99 master 192.168.77.88 slave1 192.168.77.77 slave2   1.修改主机名: ...

  7. bind配置文件

    options{} - 整个bind使用的全局配置选项 bind监听的端口,数据文件存储位置,缓存的存储位置,权限加密的控制 logging{}- 服务日志选项 日志输出的位置,以及输出的级别 zon ...

  8. 深入理解java虚拟机---JDK8-废弃永久代(PermGen)迎来元空间(Metaspace)(十二)

    引用:https://www.cnblogs.com/yulei126/p/6777323.html JDK8-废弃永久代(PermGen)迎来元空间(Metaspace)   1.背景 2.为什么废 ...

  9. 百度地图API示例:鼠标绘制点线面 控件修改

    需求 :在使用地图API时,绘制工具栏控件想自己选择哪些要,哪些不要. 可以查看相应的类:官网地址: http://api.map.baidu.com/library/DrawingManager/1 ...

  10. <Spark><Introduction to Spark>

    What Is Apache Spark? 速度方面:Spark扩展了MapReduce模型,可以更高效地提供多种类型的计算,包括交互式查询和流处理.Spark为speed所提供的最大能力就是内存计算 ...