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

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. html 多媒体使用

    HTML插件 辅助应用程序(helper application)是由浏览器启动的程序,辅助应用程序也称为插件. 辅助应用程序可用于播放音频和视频(或其他 ).辅助程序是使用<Object> ...

  2. webpack分离打包css和less

    github仓库:https://github.com/llcMite/webpack.git 为什么要分离打包?       答:刚开始学webpack的时候就很郁闷,明明没几个文件,打包出来体积特 ...

  3. CF712E [Memort and Casinos]

    题意 每次询问一段区间[l,r],求从最左边走到最右边(r+1)的概率(若走到l-1,则GG了),每个点上写有向右走的概率.支持单点修改. 思考 若只查询一次,那只要知道每个点在不走到l-1的情况下, ...

  4. Java判断对象是否为NULL

    Java使用反射判断对象是否为NULL 判断Java对象是否为null可以有两层含义: 第一层:  直接使用 object == null 去判断,对象为null的时候返回true,不为null的时候 ...

  5. 每天CSS学习之line-height

    line-height是CSS的一个属性,其作用是设置行高.其有以下几种值: 1.normal:自动设置合理的行间距.该值是默认值.如下示例: p{ line-height:normal; } 结果: ...

  6. DevExpress ASP.NET Bootstrap Controls v18.2新功能详解(二)

    行业领先的.NET界面控件2018年第二次重大更新——DevExpress v18.2日前正式发布,本站将以连载的形式为大家介绍新版本新功能.本文将介绍了DevExpress ASP.NET Boot ...

  7. mybatis学习(二)----对表进行CRUD操作

    一.使用MyBatis对表执行CRUD操作——基于XML的实现 userMapper.xml映射文件如下: <?xml version="1.0" encoding=&quo ...

  8. 牛客多校第四场 G Maximum Mode

    链接:https://www.nowcoder.com/acm/contest/142/G来源:牛客网 The mode of an integer sequence is the value tha ...

  9. hdu 5228 OO’s Sequence(单独取数算贡献)

    Problem Description OO has got a array A of size n ,defined a function f(l,r) represent the number o ...

  10. 『翻译』Access USB Devices on the Web

    https://developers.google.com/web/updates/2016/03/access-usb-devices-on-the-web Access USB Devices o ...