【python进阶01-05】教程文章相关的互联网学习教程文章

python学习进阶之socket详细介绍

Socket的英文原义是“孔”或“插座”。作为BSD UNIX的进程通信机制,通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之间的通信。网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编...

Python进阶:携带状态的闭包

闭包在 Python 中,函数也是一个对象。因此,我们在定义函数时,可以再嵌套定义一个函数,并将该嵌套函数返回,比如:from math import pow def make_pow(n):def inner_func(x): # 嵌套定义了 inner_funcreturn pow(x, n) # 注意这里引用了外部函数的 nreturn inner_func # 返回 inner_func上面的代码中,函数 make_pow 里面又定义了一个内部函数 inner_func ,然后将该函数返回。因此,我们可以使用 make_pow 来生成另...

Python进阶词典

基础教程介绍了基本概念,特别是对象和类。进阶教程对基础教程的进一步拓展,说明Python的细节。希望在进阶教程之后,你对Python有一个更全面的认识。之前我们说了,列表是Python里的一个类。一个特定的表,比如说nl = [1,3,8],就是这个类的一个对象。我们可以调用这个对象的一些方法,比如 nl.append(15)。我们要介绍一个新的类,词典 (dictionary)。与列表相似,词典也可以储存多个元素。这种储存多个元素的对象称为容器(contai...

Python进阶01词典

基础教程介绍了基本概念,特别是对象和类。进阶教程对基础教程的进一步拓展,说明Python的细节。希望在进阶教程之后,你对Python有一个更全面的认识。 之前我们说了,列表是Python里的一个类。一个特定的表,比如说nl = [1,3,8],就是这个类的一个对象。我们可以调用这个对象的一些方法,比如 nl.append(15)。我们要介绍一个新的类,词典 (dictionary)。与列表相似,词典也可以储存多个元素。这种储存多个元素的对象称为容器(conta...

python进阶之socket详解

Socket的英文原义是“孔”或“插座”。作为BSD UNIX的进程通信机制,通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之间的通信。网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编...

Python中的数学运算操作符使用进阶

Python中对象的行为是由它的类型 (Type) 决定的。所谓类型就是支持某些特定的操作。数字对象在任何编程语言中都是基础元素,支持加、减、乘、除等数学操作。 Python的数字对象有整数和浮点数,支持各种数学操作,比如+, -,*, /等。 没有这些操作符,程序中只能使用函数调用的方式进行数学运算,比如add(2, 3), sub(5, 2)。 程序中操作符的作用与普通数学操作的用法是一致的,使用中更加简便直观。Python中,这些操作符实现是通过定...

Python入门及进阶笔记Python内置函数小结

内置函数 常用函数 1.数学相关 ?abs(x) abs()返回一个数字的绝对值。如果给出复数,返回值就是该复数的模。代码如下: >>>print abs(-100) 100 >>>print abs(1+2j) 2.2360679775?divmod(x,y) divmod(x,y)函数完成除法运算,返回商和余数。代码如下: >>> divmod(10,3) (3, 1) >>> divmod(9,3) (3, 0)?pow(x,y[,z]) pow()函数返回以x为底,y为指数的幂。如果给出z值,该函数就计算x的y次幂值被z取模的值。代码如下: >>> print po...

python进阶教程之词典、字典、dict

基础教程介绍了基本概念,特别是对象和类。 进阶教程对基础教程的进一步拓展,说明Python的细节。希望在进阶教程之后,你对Python有一个更全面的认识。 之前我们说了,列表是Python里的一个类。一个特定的表,比如说nl = [1,3,8],就是这个类的一个对象。我们可以调用这个对象的一些方法,比如 nl.append(15)。 我们要介绍一个新的类,词典 (dictionary)。与列表相似,词典也可以储存多个元素。这种储存多个元素的对象称为容器(con...

python进阶教程之动态类型详解

动态类型(dynamic typing)是Python另一个重要的核心概念。我们之前说过,Python的变量(variable)不需要声明,而在赋值时,变量可以重新赋值为任意值。这些都与动态类型的概念相关。 动态类型 在我们接触的对象中,有一类特殊的对象,是用于存储数据的。常见的该类对象包括各种数字,字符串,表,词典。在C语言中,我们称这样一些数据结构为变量。而在Python中,这些是对象。 对象是储存在内存中的实体。但我们并不能直接接触到该对...

python进阶教程之循环对象

这一讲的主要目的是为了大家在读Python程序的时候对循环对象有一个基本概念。 循环对象的并不是随着Python的诞生就存在的,但它的发展迅速,特别是Python 3x的时代,循环对象正在成为循环的标准形式。 什么是循环对象 循环对象是这样一个对象,它包含有一个next()方法(__next__()方法,在python 3x中), 这个方法的目的是进行到下一个结果,而在结束一系列结果之后,举出StopIteration错误。 当一个循环结构(比如for)调用循环对象...

python进阶教程之函数参数的多种传递方法

我们已经接触过函数(function)的参数(arguments)传递。当时我们根据位置,传递对应的参数。我们将接触更多的参数传递方式。 回忆一下位置传递:代码如下: def f(a,b,c):return a+b+c print(f(1,2,3))在调用f时,1,2,3根据位置分别传递给了a,b,c。 关键字传递 有些情况下,用位置传递会感觉比较死板。关键字(keyword)传递是根据每个参数的名字传递参数。关键字并不用遵守位置的对应关系。依然沿用上面f的定义,更改调用方式:代码...

python进阶教程之文本文件的读取和写入

Python具有基本的文本文件读写功能。Python的标准库提供有更丰富的读写功能。 文本文件的读写主要通过open()所构建的文件对象来实现。 创建文件对象 我们打开一个文件,并使用一个对象来表示该文件:代码如下: f = open(文件名,模式)最常用的模式有:代码如下: "r" # 只读 “w” # 写入 比如代码如下: >>>f = open("test.txt","r") 文件对象的方法 读取:代码如下: content = f.read(N) # 读取N bytes的数据 con...

Python中list列表的一些进阶使用方法介绍

判断一个 list 是否为空 传统的方式:if len(mylist):# Do something with my list else:# The list is empty 由于一个空 list 本身等同于 False,所以可以直接:if mylist:# Do something with my list else:# The list is empty 遍历 list 的同时获取索引 传统的方式:i = 0 for element in mylist:# Do something with i and elementi += 1 这样更简洁些:for i, element in enumerate(mylist):# Do something with i and eleme...

有哪些比较好的讲Python进阶的博客?

最近学完了learn python the hard way和官方的documentation,写了50k 代码。想看看Python进阶的内容,能否推荐一些比较好的博客?回复内容: 关于python生态系统,虚拟机、python包管理器pip、虚拟环境virtualenv、还有很多进阶主题Python Ecosystempython的reddit节点(相当于中国的贴吧),是一个活跃的社区,可以交流讨论,解决问题等。Python收集进阶和高级python文章,讲了很多细微差异和python语言本身的细节。Good to Grea...

python进阶教程之模块(module)介绍

我们之前看到了函数和对象。从本质上来说,它们都是为了更好的组织已经有的程序,以方便重复利用。 模块(module)也是为了同样的目的。在Python中,一个.py文件就构成一个模块。通过模块,你可以调用其它文件中的程序。 引入模块 我们先写一个first.py文件,内容如下:代码如下: def laugh():print HaHaHaHa再写一个second.py,并引入first中的程序:代码如下: import first for i in range(10):first.laugh()在second.py中,我们使...