Python模块简要示例
1.fileinput模块是一个用于迭代处理多个文件的工具。它可以帮助我们逐行读取文件、进行一些处理操作,并输出结果。下面是一个示例代码:
```python
import fileinput
# 使用fileinput.input() 方法创建一个可迭代对象
# 它会自动遍历所有命令行参数指定的文件,如果没有指定文件,则默认从标准输入读取
for line in fileinput.input():
# 对每一行进行处理并输出
processed_line = process_line(line)
print(processed_line)
```
2.集合是Python中的一种数据类型,它是一个无序且元素唯一的容器。常用的集合类型有set和frozenset。set 可以进行增删改查等操作,而frozenset是不可变的,一经创建就不能修改。以下是一个集合的例子:
```python
# 创建一个set
my_set = {1, 2, 3, 4, 5}
# 遍历set
for num in my_set:
print(num)
# 添加元素
my_set.add(6)
# 删除元素
ve(3)
# 判断元素是否在set中
if 4 in my_set:
print("4 is in the set")
```
3.堆(heap)是一种特殊的数据结构,它是一个完全二叉树,并且满足堆的性质:父节点的值总是大于/小于它的子节点的值。Python中的heapq模块提供了对堆的操作函数。以下是一个堆的例子:
```python
import heapq
# 创建一个空的堆
heap = []
# 添加元素到堆中
heapq.heappush(heap, 3)
heapq.heappush(heap, 1)
heapq.heappush(heap, 4)
# 弹出堆中最小的元素
smallest = heapq.heappop(heap)
print(smallest) # 输出:1
```
4.双端队列(deque)是一种具有队列和栈特性的数据结构,它可以从任意一端插入和删除元素。Python中的collections模块提供了deque类型。以下是一个双端队列的例子:
```python
from collections import deque
# 创建一个空的双端队列
deque = deque()
# 从右侧插入元素
deque.append(1)
deque.append(2)
python新手代码示例deque.append(3)
# 从左侧插入元素
deque.appendleft(0)
# 弹出右侧的元素
rightmost = deque.pop()
print(rightmost) # 输出:3
# 弹出左侧的元素
leftmost = deque.popleft()
print(leftmost) # 输出:0
```
5.time模块提供了处理时间的函数和类。以下是几个常用的time模块函数的例子:
```python
import time
# 获取当前时间戳(1970纪元后经过的浮点秒数)
timestamp = time.time()
print(timestamp)
# 推迟程序运行指定的秒数
time.sleep(3)
# 返回当前的时间对象(struct_time)
current_time = time.localtime()
print(current_time)
# 格式化时间对象为指定格式的字符串
formatted_time = time.strftime("%Y-%m-%d %H:%M:%S", current_time) print(formatted_time)
```
6.random模块用于生成随机数。以下是几个常用的
random模块函数的例子:
```python
import random
# 生成一个0到1之间的随机浮点数
random_number = random.random()
print(random_number)
# 生成一个指定范围内的随机整数
random_integer = random.randint(1, 10)
print(random_integer)
# 从给定的序列中随机选择一个元素
my_list = [1, 2, 3, 4, 5]
random_choice = random.choice(my_list)
print(random_choice)
```
7.shelve模块提供了一个简单的持久化存储函数,类似于字典。以下是一个使用shelve模块的例子:
```python
import shelve
# 创建一个持久化存储文件
db = shelve.open("mydb")
# 存储数据
db["name"] = "John"
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论