摘要:chapter8 函数 8.6 将函数存储在模块中 8.6.1 导入整个模块 要让函数是可导入的,的先创建模块。模块 的扩展名为.py的文件 import pizza 8.6.2 到导入特定的函数 from module_name import function_name fromt module_
阅读全文
12 2017 档案
摘要:chapter9 类 9.1 创建和使用类 9.1.1 创建Dog类 class Dog(): """一次模拟小狗的简单尝试""" def _init_(self, name, age): self.name = name self.age = age def sit(self): print(se
阅读全文
摘要:chapter10 文件和异常 10.1 从文件中读取数据 10.1.1 读取整个文件 with open("pi.txt") as file_object: contents = file_object.read() print(contents) print(contents.rstrip())
阅读全文
摘要:chapter6 字典 6.1 一个简单的字典 6.2 使用字典 6.2.1 访问字典中的值 6.2.2 添加键值对 6.2.3 先创建一个空字典 6.2.4 修改字典中的值 6.2.5 删除键值对 del alien['points'] 6.2.6 由类似对象组成的字典 favorite_lang
阅读全文
摘要:chapter5 if语句5.1 一个简单示例cars = ['audio','bmw','subaru','toyota'] for car in cars:if car == 'bmw':print(car.upper())else:print(car.title())5.2 条件测试5.2.1
阅读全文
摘要:chapter9 进程凭证 每个进程都有一套用数字表示的用户ID(UID)和组ID(GID).有时也将这些ID称子为进程凭证。 1:实际用户ID和实际组ID 2:有效用户ID和有效组ID 3:保存的set-user-ID 和保存的set-group-ID 4:文件系统用户ID和文件系统组ID 5:辅
阅读全文
摘要:chapter10 时间 1:真实时间:度量这一时间的起点有二:(1)某个标准点;(2)进程生命周期内的某个固定时点(通常为程序启动) 2:进程时间:一个进程所使用的CPU时间总量,适用于对程序,算法性能的检查或优化。10.1 日历时间(calendar Time) 日历时间存储于类型为time_t
阅读全文
摘要:chapter8 用户和组 8.1 密码文件 /etc/passwd 每行都包含7个字段,之间用冒号分割,如下所示: mtk:x:1000:100:Michael:/home/mtk:/bin/base 按顺序介绍着7个字段: 登录名: 经过加密的密码:长度为13个字符 用户ID: 组ID: 注释:
阅读全文
摘要:Chapter7 内存分配本章将用于在堆或者栈上分配内存的函数。7.1 在堆上分配内存 通常将堆的当前的内存边界称为"program break" 7.1.1 调整program break: brk()和sbrk() 改变堆的大小(即分配或者释放内存),其实就像命令内核改变进程的program b
阅读全文
摘要:chapter6 进程 重点关注进程虚拟内存的布局及内容。6.1 进程和程序 进程(process)是一个可执行程序(program)的实例。 程序是包含了一系列信息的文件,这些信息描述了如何在运行时创建一个进程,所包含的内容如下。 (1):二进制格式标识:每个程序文件都包含用于描述可执行文件格式的
阅读全文
摘要:Chapter5 深入探究文件I/O 本章节将介绍另一个与文件操作相关的系统调用:多用途的fcntl(),并展示其应用之一读取和设置打开文件的状态标志。 5.1 原子操作和竞争条件 所有系统调用都是以原子操作方式执行的。是以为内核保证了某系统调用中的所有步骤会作为独立操作而一次性加以执行,其间不会为
阅读全文
摘要:Chapter4 文件IO 4.1 概述 文件描述符 == Windows的句柄 标准文件描述符: 0 标准输入 STDIN_FILENO stdin 1 标准输出 STDOUT_FILENO stdout 2 标准错误 STDERR_FILENO stderr (1):fd = open(path
阅读全文
摘要:chapter5 5.1 概述 5.2 TCP回射服务器程序:main函数 int main(int argc, char **argv) { int listenfd,connfd; pid_t childpid; socklen_t clilen; struct sockaddr_in, cli
阅读全文
摘要:chapter6 6.1 概述 I/O复用典型使用在下列网络应用场合。 (1):当客户处理多个描述符时,必须使用IO复用 (2):一个客户同时处理多个套接字是可能的,不过不叫少见。 (3):如果一个TCP服务器既要处理监听套接字,又要处理已连接套接字。 (4):如果一个服务器既要处理TCP,又要处理
阅读全文
摘要:chapter3套接字编程简介3.1 概述 地址转换函数在地址的文本表达和他们存放在套接字地址结构中的二进制值之间进行转换。多数现存的IPv4代码使用inet_addr和inet_ntoa这两个函数,不过这两个新函数inet_pton和inet_ntop同时适用于IPv4和IPv6. 3.2 套接字
阅读全文
摘要:rem ************************************************rem * Script to compile the solutions of IdealOEye*rem * Created by: zhaohu *rem * Created 2017.05
阅读全文
摘要:chapter4 操作列表 4.1 遍历整个列表 magicians=['alice','david','carolina'] for magician in magicians: print(magician) 4.1.1 深入地研究循环 4.1.2 在for循环中执行更多的操作 4.1.3 在f
阅读全文
摘要:chapter3 列表简介3.1 列表是什么 列表是一系列按特定顺序排列的元素组成。 bicycle = ['trek','cannondale'] print bicycle 3.1.1 访问列表元素 print(bicyle[0]) 3.1.2 索引从0而不是从1开始 Python为了访问一个列
阅读全文
摘要:2.1 运行2.2 变量 message = "hello" print(message) 2.2.1 变量的命名和使用 2.2.2 使用变量是避免命名错误2.3 字符串 “Hello” ‘Hello’ “Hello ‘zhaohu’” 'this is "dog"! ' 2.3.1 使用方法修改字
阅读全文
摘要:2.1 概述 TCP:复杂,可靠的字节流协议 UDP:简单的,不可靠的数据包协议 SCTP:流控制传输协议 2.2 总图 2.3 用户数据报协议2.4 传输控制协议2.5 流控制传输协议(SCTP)2.6 TCP连接的建立和终止
阅读全文
摘要:3.1 概述 地址转换函数在地址的文本表达和他们存放在套接字地址结构中的二进制值之间进行转换。多数现存的IPv4代码使用inet_addr和inet_ntoa这两个函数,不过这两个新函数inet_pton和inet_ntop同时适用于IPv4和IPv6. 3.2 套接字地址结构 sockaddr_
阅读全文
摘要:1.1 概述 1.2一个简单的时间获取客户程序 网际套接字地址结构中IP地址和端口号这两个成员必须使用特定的格式,为此我们调用库函数htons("主机到网络端整数")去转换二进制端口号,又调用库函数inet_pton("呈现形式到数值")去把ASCII命令行参数转换为合适的格式。 1.3协议无关性
阅读全文