栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【Python】Python基础语法学习 下(数据结构,模块,输入输出,异常处理,类)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Python】Python基础语法学习 下(数据结构,模块,输入输出,异常处理,类)

Python官方教程

从AcWing - Django课程精简学习

学习经验:边学边查,先把常用的通读一遍即可

文章目录

Python官方教程 5. 数据结构(python3大数据结构:列表,集合,字典)

5.1 列表5.2 元组5.3 集合5.4 字典5.5 循环的技巧 6. 模块7. 输入与输出

7.1 格式化输出7.2. 读写文件 8. 异常处理9. 类

5. 数据结构(python3大数据结构:列表,集合,字典) 5.1 列表

就是数组,但是类型可以不一样

常用函数:

list.append(x)
len(list)

列表推导式

squares = [x**2 for x in range(10)]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

二维数组

>>> matrix = [
...     [1, 2, 3, 4],
...     [5, 6, 7, 8],
...     [9, 10, 11, 12],
... ]
5.2 元组

类似列表,就是不能改,定义的时候可以不用()

In [13]: t = (1, 2, 3)                                                                                                                                                                       

In [14]: t[0]= 4                                                                                                                                                                             
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
 in 
----> 1 t[0]= 4

TypeError: 'tuple' object does not support item assignment

In [15]: t = 1, 2, 3                                                                                                                                                                         

In [16]: t                                                                                                                                                                                   
Out[16]: (1, 2, 3)

元组打包和序列解包,用来交换便捷

序列解包

5.3 集合

Python 还支持 集合 这种数据类型。集合是由不重复元素组成的无序容器。对应C++的set。基本用法包括成员检测、消除重复元素。集合对象支持合集、交集、差集、对称差分等数学运算。

创建集合用花括号或 set() 函数。注意,创建空集合只能用 set(),不能用 {},{} 创建的是空字典,下一小节介绍数据结构:字典。

以下是一些简单的示例

>>> basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
>>> print(basket)                      # show that duplicates have been removed
{'orange', 'banana', 'pear', 'apple'}
>>> 'orange' in basket                 # fast membership testing
True
>>> 'crabgrass' in basket
False

>>> # Demonstrate set operations on unique letters from two words
...
>>> a = set('abracadabra')
>>> b = set('alacazam')
>>> a                                  # unique letters in a
{'a', 'r', 'b', 'c', 'd'}
>>> a - b                              # letters in a but not in b
{'r', 'd', 'b'}
>>> a | b                              # letters in a or b or both
{'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'}
>>> a & b                              # letters in both a and b
{'a', 'c'}
>>> a ^ b                              # letters in a or b but not both
{'r', 'd', 'b', 'm', 'z', 'l'}
5.4 字典
>>> tel = {'jack': 4098, 'sape': 4139}
>>> tel['guido'] = 4127
>>> tel
{'jack': 4098, 'sape': 4139, 'guido': 4127}
5.5 循环的技巧



翻转reversed()和排序sorted() 函数

6. 模块



Python已经实现了很多包,直接安装调用即可

7. 输入与输出 7.1 格式化输出

7.2. 读写文件

在处理文件对象时,最好使用 with 关键字。优点是,子句体结束后,文件会正确关闭,即便触发异常也可以。而且,使用 with 相比等效的 try-finally 代码块要简短得多:

>>> with open('workfile') as f:
...     read_data = f.read()

>>> # We can check that the file has been automatically closed.
>>> f.closed
True


8. 异常处理

>>> def divide(x, y):
...     try:
...         result = x / y
...     except ZeroDivisionError:
...         print("division by zero!")
...     else:
...         print("result is", result)
...     finally:
...         print("executing finally clause")
...
>>> divide(2, 1)
result is 2.0
executing finally clause
>>> divide(2, 0)
division by zero!
executing finally clause
>>> divide("2", "1")
executing finally clause
Traceback (most recent call last):
  File "", line 1, in 
  File "", line 3, in divide
TypeError: unsupported operand type(s) for /: 'str' and 'str'

如上所示,任何情况下都会执行 finally 子句。except 子句不处理两个字符串相除触发的 TypeError,因此会在 finally 子句执行后被重新触发。

在实际应用程序中,finally 子句对于释放外部资源(例如文件或者网络连接)非常有用,无论是否成功使用资源。

9. 类

构造函数,构造函数也可以传参数,甚至可以关键字对应,解包操作

定义成员函数

继承,调用基类的构造函数

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/739532.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号