python 进阶

来源:互联网 发布:wifi模拟3g网络 编辑:程序博客网 时间:2024/05/16 01:14

一。字典(键值对)

1.建立


2.


3、词典的常用方法




二。文本输入输出 

1。 用对象方式来打开文件



2. 对象文件的操作


注:关闭文件后才会保存上


三 模块

1.倒入 


2.路径

Python会在以下路径中搜索它想要寻找的模块:

  • 程序所在的文件夹

  • 操作系统环境变量PYTHONPATH所包含的路径

  • 标准库的安装路径

3、模块包

可以将功能相似的模块放在同一个文件夹(比如说this_dir)中,构成一个模块包。通过

import this_dir.module

引入this_dir文件夹中的module模块。

该文件夹中必须包含一个 __init__.py 的文件,提醒Python,该文件夹为一个模块包。__init__.py 可以是一个空文件




四, 函数传参

1. 默认:位置传参

2.关键字传参优先位置

例:print(f(c=3,b=2,a=1))

3.默认参数(同其他语言)

4.包裹传递



例:



5.解包裹:


6. 可混合




五。 循环设计

1.enumerate()



2.zip()




六 循环深入


1.循环对象

open()返回的实际上是一个循环对象,包含有next()方法。而该next()方法每次返回的就是新的一行的内容,到达文件结尾时举出StopIteration。这样,我们相当于手工进行了循环。






改成:


2.迭代器,生成器

从技术上来说,循环对象和for循环调用之间还有一个中间层,就是要将循环对象转换成迭代器(iterator)。这一转换是通过使用iter()函数实现的。但从逻辑层面上,常常可以忽略这一层,所以循环对象和迭代器常常相互指代对方。

生成器(generator)的主要目的是构成一个用户自定义的循环对象。

生成器的编写方法和函数定义类似,只是在return的地方改为yield。生成器中可以有多个yield。当生成器遇到一个yield时,会暂停运行生成器,返回yield后面的值。当再次调用生成器的时候,会从刚才暂停的地方继续运行,直到下一个yield。生成器自身又构成一个循环器,每次循环使用一个yield返回的值。



更简便的方法!!!



例:生成表:



七。函数对象











八。错误/异常 处理




如果try中有异常发生时,将执行异常的归属,执行except。异常层层比较,看是否是exception1, exception2...,直到找到其归属,执行相应的except中的语句。如果except后面没有任何参数,那么表示所有的exception都交给这段程序处理。

如果try中没有异常,那么except部分将跳过,执行else中的语句。

finally是无论是否有异常,最后都要做的一些事情


九。动态类型

1.



2.

(这里l1,l2相当于指针)

2.


3.函数的参数传递,本质上传递的是引用





0 0