5.0 6w+浏览
- Python3.2.3大小:1MB1.2 初步走进编程之门 备注:在此换了 pdf阅读器,以致从 pdf 原文件中的 python 关键字无法标色,故下文 python 源码统一用蓝色。 当然,我们可以运用 python 实现更加复杂的任务而不仅仅是两个数的相加,例如,我们一
0.0 673浏览
- Python3.2.3大小:1MB第二章 更多控制流程语句 除了前面介绍的 while 语句外,python 也使用在其他语言中所熟知的一些流程控制语句。 2.1 if语句 可能最被人周知控制语句就是 if 语句了,例如: >>> x = int(input("Please enter an integer: ")) Please enter an integer: 42 >>> if x < 0: ... x = 0 ... p
0.0 587浏览
- Python3.2.3大小:1MB2.5 Pass语句 Pass 语句一般做些无关紧要的事情,当按照句法语句被要求时但是系统不需要任何操作,此 时可以用 pass语句。例如: >>> while True: ... pass # Busy-wait for keyboard interrupt (Ctrl+C) ... 还常常用在创建最小类中。 >>> class MyEmptyClass: ... pass ... 能用到 pa
0.0 560浏览
- Python3.2.3大小:1MB2.2 for语句 在 python 中的 for 语句可能有以前你在 C 或者 pascal 中所用的有点小差别。她既不像 Pascal 语言中常常遍历数组的算法过程,也不像在 C 语言中给用户自己定义遍历步骤或模糊 条件的能力,python 中的 for 语句可以按照元素在序列(列表或者字符串)中出现的顺序逐 步地遍历它们。例如: >>> # Measure some strings: ...
0.0 561浏览
- Python3.2.3大小:1MB2.6 定义方法 我们可以创建一个实现任意范围内的斐波那契数列的输出功能方法。 >>> def fib(n): # write Fibonacci series up to n 写出在 n 以内的斐波那契数列 ... """Print a Fibonacci series up to n.""" 输出在 n 以内的斐波那契数列 ... a, b = 0, 1 ... while a < n: ..
0.0 547浏览
- Python3.2.3大小:1MB2.7 更多关于方法定义 Python允许用可变数目的参数定义方法。以下有可以相互结合的三种方法。 2.7.1 默认参数值 最有用的形式就是给一个或多个变量制定默认值。这种方法可以创建一个允许调用时比定义 时需要更少的参数。例如: def ask_ok(prompt, retries=4, complaint=’Yes or no, please!’): while True: ok = inpu
0.0 542浏览
- Python3.2.3大小:1MB2.8 编码风格 现在你准备写出更长而复杂的 python 代码了, 也是该告诉你关于 python 的编码风格时候 了。很多语言可以用不同的风格进行编码。有些风格比其他风格编写的代码更有可读性。因 此,让别人能有轻易地读懂你的代码是一直是个好想法,并且养成这种良好的编码风格将更 大地帮助你。 对于 python,PEP 8作为许多项目应该遵守的编码指导书而做的。 它提出了一种可读而悦 目的编码风
0.0 582浏览
- Python3.2.3大小:1MB第三章 数据结构 这章将详细学习你以前已经知道的知识,同时也会添加一些新知识。 3.1 列表 列表数据类型有很多方法,以下是列表对象的所有方法: list.append(x) 添加单个元素到列表末尾,等同于 a[len(a)] = [x] list.extend(L) 通过添加指定列表中所有的元素来扩展列表,等同于 a[len(a):] = L. list.insert(i, x) 把单个元素插入
0.0 584浏览
- Python3.2.3大小:1MB3.2 删除语句 Del 删除语句能根据给定的索引而不是值从列表中快速的删除元素。它与能产生返回值的 pop()方法不同。Del 语句也可以从列表中删除数据段或者清空整个列表。例如: >>> a = [-1, 1, 66.25, 333, 333, 1234.5] >>> del a[0] >>> a [1, 66.25, 333, 333, 1234.5] >>> del a[2:4] >>>
0.0 558浏览
- Python3.2.3大小:1MB3.4 Set集合 Python 还包含一个集合的数据类型。一个 Set 是一个不包含重复元素的无序集合。基本应 用是成员资格测试和消除重复元素。 Set 对象也提供一些算术操作符,比如连接,交集,差 值和堆成差。 花括号或 set()方法都可以用来创建集合。注意如果你想要创建一个空集合,必须要用 set() 而不能用{}。 后者创建了一个空字典,空字典我们将在下一节讨论。 对于集合的使用在这里做
0.0 543浏览
- Python3.2.3大小:1MB3.6 遍历技巧 当通过字典遍历数据时,用 items()方法就可以同时把关键字和相对应的值从字典中取出。 >>> knights = {’gallahad’: ’the pure’, ’robin’: ’the brave’} >>> for k, v in knights.items(): ... print(k, v) ... gallahad the pure robin the brav
0.0 565浏览
- Python3.2.3大小:1MB3.7 深入条件控制 在 while 和 if 语句中用到的条件可以包含任何操作符而不仅仅是比较运算符。 比较运算操作符 in和 not in 主要检查值是否在列表中出现(或不出现)。操作符 is和 is not 用 来比较两个对象是不是真正相同的对象。这仅仅用于可变对象如列表。所有的比较运算法拥 有同样的优先级,但都比数字操作符的优先级低。 比较运算法可以连接使用,例如: a < b == c
0.0 539浏览
- Python3.2.3大小:1MB4.1 深入模块 一个模块可以包含可执行语句和方法定义。这些语句用来初始化模块。当模块第一次被导入 到其他地方时候这些语句将会执行。 每个模块都有自己私有的符号表,定义在模块内的所有方法可以把它当做全局符号表来用。 因此,模块的作者可以在模块中用全局变量而不同担心与用户全局变量的意外冲突。另一方 面,如果你确切地知道自己在做什么,你可以使用引用模块函数的表示法访问模块的全局变 量。Modname.
0.0 542浏览
- Python3.2.3大小:1MB4.2 标准接口 Python 自带一些标准模块的库文件。这些库文件介绍在单独的文档(python 库文件介 绍)中有所描述。一些模块在解释器中创建,它们提供了对非语言核心的但又为了效率又不 得包含到里面部分的操作方法,或者是提供了对操作系统的底层的访问,例如系统调用。这 些模块 ge 会根基底层平台进行不同的选择配置,比如:winreg模块只能在 window 系统上 提供, 另一个特殊模块更值
0.0 552浏览
- Python3.2.3大小:1MB第五章 输入输出 一个程序的输出有好多种方式,数据既可以用人们读懂的形式打印出来或者写入到文件以便 将来使用。这章就讨论这些问题。 5.1 格式化输出 目前我们已经接触了两种输出值方式: 表达式语句和 print()函数。(第三种就是使用 file 对 象中的 write()方法;标准的文件输出可参考 sys.stdout 库文件) 常常你会想控制输出格式化的数据而不是简单用空格分隔的字符。这里有
0.0 544浏览
- Python3.2.3大小:1MB5.2文件读写 Open()方法返回一个文件对象,在大多数情况下传递两个对象: open(filename, mode); 例如: >>> f = open(’/tmp/workfile’, ’w’) 第一个参数是包含文件名称的字符串,第二个参数是包含描述文件使用方式的字符串。如果 文件只读标记为“r”,只写标记为“w”(相同名字的已经存在文件将会被清除),, “a”表示添 加到文件结尾,数据就会
0.0 549浏览
- Python3.2.3大小:1MB6.1 名称和对象相关术语 对象有自己的特性,多个名称(在多个作用中)可以绑定在同一个对象上。这在其他语 言中称为别名。在对 python 中的第一印象中通常会被忽略。在处理不可变基本对象时(数 字、字符串和元组)时可以放心忽略。但是,别名对于涉及到可变对象(如列表,字典和其 他类型)的 python 源码语法时可能产生意想不到到的效果。这通常有利于代码的优化,因为 别名在一些方面可以像指针使用。
0.0 353浏览
- Python3.2.3大小:1MB6.4 一些说明 数据属性可以重写同名的方法属性。这是为了避免在大型系统中产生问题的意外名称冲突。所以用一些减 少冲突的常用方法是很有效果的。常用的方法包括:大写字母方法名称,用唯一的字符串来做为数据属性 的名称(可以是个下划线_)或者用动词命名方法和用名字命名数据属性。 数据属性就像和对象的普通用户一样可以被方法引用。换句话说,类不能用来实现纯净的数据类型。事实 上,在 python中不能强制数
0.0 389浏览
- Python3.2.3大小:1MB6.6 私有变量 除了对象内部其他都不能访问的“私有”变量在 python 中是不存在的。但是,大多数 python 代码都 遵守一个规则:以下划线为前缀的名称被看成是 API 的非公共部分。它可以认为是一个细节实现并且改变 时不需通知。 因为存在类私有成员的合法用例(即为了避免在子类定义的名称想冲突),所有存在对这种机制的限 制支持。这种机制叫名称变换。_spam 形式的任何标识符(至少是两个开
0.0 297浏览
- Python3.2.3大小:1MB6.8 异常也是类 在异常中的类和一个异常是可以兼容,这里的异常是指同一个类或者是一个基类(但是不能 反过来说-遍历派生类的异常语句不能和基类相兼容)例如,接下来将按照顺序打印 BCD 注意如果异常语句进行翻转(except在前),它将会打印出 BBB,-最先满足的异常语句就 会触发。
0.0 298浏览
- Python3.2.3大小:1MB6.11生成器表达式 有些简单的生成器可以使用类似列表推导式的符号简单编码为表达式,但无序带有中括号。 这种表 达式是专门为某种场景而设计的,在那里,生成器被一个封闭函数所使用。生成器表达式比完成生成器定 义更加简单但是缺乏通用性。而且比等价的列表表达式更容易记住。 第七章 Python标准库概览 7.1 操作系统接口 Os 模块提供主要许多与操作系统交互的函数。 >>> import os >>
0.0 308浏览
- Python3.2.3大小:1MB7.2 文件通配符 Glob模块提供一个函数用来从目录通配符搜索中生产文件列表。 >>> import glob >>> glob.glob(’*.py’) [’primes.py’, ’random.py’, ’quote.py’] 7.3 命令行参数 共同的工具脚本常常需要提供命令行参数。这些参数作为列表保存在 sys 模块中 argv 属性中。例如,接下 来输出通过在命令行运行 python
0.0 305浏览
- Python3.2.3大小:1MB7.5 字符串模式匹配 re 模块为高级字符串成处理提供了正则表达式匹配。 对于复杂的匹配和处理,正则表达式能够提供简明优 化的方法: >>> import re >>> re.findall(r’\bf[a-z]*’, ’which foot or hand fell fastest’) [’foot’, ’fell’, ’fastest’] >>> re.sub(r’(\b[a-z]+) \1
0.0 327浏览
- Python3.2.3大小:1MB7.7 互联网访问 Python中有许多访问互联网和处理互联网协议的模块。其中最简单的两个就是从链接中获得数据的 urllib.request和发送邮件的 smtplib. >>> from urllib.request import urlopen >>> for line in urlopen(’http://tycho.usno.navy.mil/cgi-bin/timer.pl’): ..
0.0 339浏览
- Python3.2.3大小:1MB7.9 数据压缩 Python还支持常用数据的打包和压缩。主要涉及到的模块式 zlib,gzip, bz2,zipfile and tarfile. >>> import zlib >>> s = b’witch which has which witches wrist watch’ >>> len(s) 41 >>> t = zlib.compress(s) >>> len(t) 37 >>>
0.0 348浏览
- Python3.2.3大小:1MB7.10 性能评测 一些 python使用者对于同一问题的不同解决办法的性能很感兴趣。Python提供了一种评测工具就可以马上 回答这些问题。 例如, 当封装参数的时候可以用元组封装和拆封特性来代替传统的方法。Timeit 模块中可以迅速描述一个 性能优势。 >>> from timeit import Timer >>> Timer(’t=a; a=b; b=t’, ’a=1; b=2’).ti
0.0 357浏览
- Python3.2.3大小:1MB7.12 内置电池 Python 有“内置电池”的哲学,因为可以很好看到通过更大包扩展更加复杂和健壮的 性能。例如: Xmlrpc.client 和 xmlrpc.server 模块可以实现远程程序调用。尽管模块有这样的名字,用 户无需拥有 xml 的知识或处理 xml. Email 包是一个管理邮件消息的库。包含 MIME 和其他 rfc2822-base 消息文档。不像真 正收发消息的
0.0 338浏览
- Python3.2.3大小:1MB8.3 使用二进制数据记录布局 Struct 模块提供了 pack()和 unpack()方法来处理可变长度的二进制格式。接下来的例子展 示在一个没用 zipfile 模块的 zipfile 如何通过标题信息循环。压缩码“H”和“I”分别表示 2 和 4 字节无符号数字,“<”表明都是标准大小并且按照 little-endian 字节排序。
0.0 334浏览
- Python3.2.3大小:1MB8.7 列表工具 许多数据结构需求能通过内置列表类型满足,但是,有时处于不同性能取舍需要从中选择一 种实现。 Array 模块能提供一个像列表的 array 对象,它仅仅能存储同类数据并且更加简洁。接下来 例子展示了一个数字数组。存储是 2 个字节的无标识的二进制数据而不是在 python 对象中 普通列表中的每个 16字节的值。 >>> from array import array >>> a
0.0 383浏览
- Python3.2.3大小:1MB8.8 十进制浮点数计算 十进制模块提供了对十进制浮点数计算的 Decimal 数据类型。相比于内置的二进制 float 浮 点实现,此类更加有助于以下情况: 需要精确十进制位数表示的财务系统或者其他用途。 控制精度 控制保留位数以来满足法律或者管理需求 重大十进制数的跟踪 那些用户想要控制数学计算结果的应用程序 例如,计算在 70 美分电话费中 5%的税收,在十进制和二进制浮
0.0 423浏览
- python大小:655KB 还记得我们第一节中类的一般形式中的括号中列出的父 类列表吗?就是这里说到的继承。 *******************编写子类*************** 编写一个类的子类只需要指定它的父类即可,剩下的和 写一个普通的类很相似。 如果我们需要在子类中调用父类中的方法,则可以使用 Super,比如在子类的__init__方法中调用父类的 __init__方法,那么可以在子类的_
0.0 27浏览
- python大小:655KB第二节 类的实例 ****************说法的变化******************* 可能在不同的语言中,说法会稍微有点变化,在 Java 中, 我们通常会说类的一个实例为一个对象,但是,在 Python 中,我们通常会说类对象和实例对象。 这也是说法上的一点不同,但是有一个说法是通用的, 那就是类的实例。 **************类如何实例化******
0.0 53浏览
- tkinter大小:1MB第6章 完整的窗口应用程序 考虑一个完整的窗口应用程序都需要哪些内容,那 么会发现我们学习的内容已经差不多了。当然,我们还
0.0 72浏览
- tkinter大小:1MB第7章 布局管理 界面的布局是很重要的,即使我们目前接触到的界面的 元素并不多,但是了解界面的布局依然是非常重要的一点, 一个清爽简介的界面没有一个良好的布局是难以想象的。 *****************pack************************ 前面我们使用过不少 pack 函数了,我们可以把它理解 为一个弹性的容器。我们可以使用 pack 函数按照系统默认 的方式
0.0 30浏览
- selenium2大小:6MB第三节、python异常断言 在实际的脚本开发中,我们需要用到 python的异常处理来捕捉异常和抛异常,所以我们有需要学习 和使用 python的异常处理。 >>> open('abc.txt','r') Traceback (most recent call last): File "<stdin>", line 1, in <module> IOError: [Errno 2] No suc
0.0 28浏览
- selenium2大小:6MB第四节、weddriver错误截图 Webdriver 提供错误截图函数 get_screenshot_as_file(),可以帮助我们跟踪 bug,在脚本无法继续执行 时候, get_screenshot_as_file()函数将截取当前页面的截图保存到指定的位置,这是一个非常棒的功能,下 面实例展示 get_screenshot_as_file()函数的使用。 #coding=utf-8 fr
0.0 27浏览
- selenium2大小:6MB第五节、自动化测试用例设计实例 上一节我们简单讨论了手工测试用例与自动化测试用之间的差异,以及自动化测试用例设计时的注意 事项,这一节就通过实例向读者介绍如何编写具体的自动化测试用。 笔者以快播私有云产品为例: http://webcloud.kuaibo.com/ 快播私有云是快播社区的产品之一,为用户提供免费的在线空间,读者进入空间后可以收藏用户分享 的影片,同时可以将自己的影片分享给其他用户
0.0 20浏览
- selenium2大小:6MB第四节、批量执行测试用例 通过对前面对 unittest框架的学习我们了解到,可以在一个.py 文件里编写多个测试用例,然后执行 文件里的所有用例,这显然是一个不错的做法,我们可以将一些相关的用例放到一个文件里,unittest支 持这么做,但假如我们成百上千的用例呢,放一.py文件显然有些不太合理。 比较合理的做法是把相关的几条用例放到一个.py文件里,把所有.py文件放到一个文件夹下,然后通
0.0 30浏览
- selenium2大小:6MB第三节、unittest单元测试框架解析 通过上一节的学习我们对 unittest框架了初步的了解。这一节将详细介绍 unittest框架是如何帮助我们 完成单元测试的。因为 unittest是我们后续开展自动化测试的基础,所以,请读者认真学习 unittest 框架的 使用。 单元测试负责对最小的软件设计单元(模块)进行验证,它使用软件设计文档中对模块的描述作为指 南,对重要的程序分支进行测试以
0.0 52浏览
- selenium2大小:6MB第七章 引入测试报告与结构优化 我想在开始本章的学习之前先来先来回顾一下目前的测试结构,因为本章节会对结构做一个改进,以 帮助我们更好的实施自动化测试。 /selenium_python/test_case/baidu.py -----测试用例 /test_case/webcloud.py -----测试用例 /test_case/login.py -----登录模块 /test_case/qui
0.0 23浏览
- selenium2大小:6MB第三节、结构改进 到目前为止,我们已经成功的解决了通过测试套件执行多个测试用例文件的问题,并且将输出结果整 合在一个测试报告里,目的达到了。但目前的测试结构并不合理,我们需要进一步对结构进行调整,以便 于测试的维护是管理。 7.3.1、all_tests.py 文件移出来 我们首先要调整的是 all_tests.py文件的位置, all_tests.py是执行所有用例的程序,而并非测试用例本
0.0 22浏览
资源

点击登录
VIP尊享特权




立即开通
Airpods Pro带回家
最新资源
优质知识分享者