IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python常用tricks -> 正文阅读

[Python知识库]python常用tricks

捕捉异常catch, except:

example:

try:
    fh = open("testfile", "w")
    fh.write("这是一个测试文件,用于测试异常!!")
except IOError:
    print("Error: 没有找到文件或读取文件失败")
else:
    print("内容写入文件成功")
    fh.close()

列表list:

pop() 按索引删除列表某个值:

y = [0,0,1,0]
y.pop(3)
print(y) # [0,0,1]

【注:若边遍历边删除列表某个元素时要注意了!!!。因为边遍历边删除,会导致列表变短,所以弄个count变量记录。每删一个count+1】

x = [0,1,2,3]
count = 0
for i in range(len(x)):
	x.pop(i-count)
	count += 1
print(x) # []

remove() 函数用于移除列表中某个值的第一个匹配项:

y = [0,0,1,0]
y.remove(0)
print(y) # [0,1,0]

注意事项:
1. python创建二维列表【有坑~】:点击进入
2.Python列表的浅拷贝与深拷贝【有坑~】:点击进入

二分查找模块bisert:

找到合适的插入位置:

  • 如果列表中存在多个元素等于x,那么bisect_left(nums, target)返回最左边第一个大于等于target的那个索引。
  • bisect_right(nums, target)返回最右边的那个索引加1,回最右边第一个小于等于target的那个索引。
  • bisect()和bisect_right()等价。
import bisect
nums = [1,5,5,5,17]
index1 = bisect.bisect(nums,5)
index2 = bisect.bisect_left(nums,5)
index3 = bisect.bisect_right(nums,5)
print("index1 = {}, index2 = {}, index3 = {}".format(index1, index2, index3))
# index1 = 4, index2 = 1, index3 = 4

按顺序插入某个元素:

import bisect
a = [1,4,6,8,12,15,20]
bisect.insort(a,13)
print(a)
# [1, 4, 6, 8, 12, 13, 15, 20]

collections模块

这个模块实现了特定目标的容器,以提供Python标准内建容器 dict、list、set、tuple 的替代选择。
Counter:字典的子类,提供了可哈希对象的计数功能
defaultdict:字典的子类,提供了一个工厂函数,为字典查询提供了默认值
OrderedDict:字典的子类,保留了他们被添加的顺序
namedtuple:创建命名元组子类的工厂函数
deque:类似列表容器,实现了在两端快速添加(append)和弹出(pop)
ChainMap:类似字典的容器类,将多个映射集合到一个视图里面

deque:
这个经常使用,用来实现队列,跟列表差不多,但它可以popleft()弹出对首元素。

defaultdict:
Python中通过Key访问字典,当Key不存在时,会引发‘KeyError’异常(其实也可通过dict.get(key, 第二个参数)来解决,找不到默认返回None,可设置第二个参数为找不到key时返回的默认值)。为了避免这种情况的发生,可以使用collections.defaultdict()方法来为字典提供默认值。
key值可自定义,value的类型与collections.defaultdict()括号中设置类型的相同。
如:

import collections
s = [('yellow', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)]

# defaultdict
d = collections.defaultdict(list)
for k, v in s:
    d[k].append(v) #就是这里和dict()不一样,用dict()的字典,这里会发生KeyError异常
print(d.items())

output:dict_items([(‘yellow’, [1, 3]), (‘blue’, [2, 4]), (‘red’, [1])])

?其他功能和dict()一样。

yield的用法详解:

点击进入

nonlocal和global用法

点击进入

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-03-08 22:24:55  更:2022-03-08 22:27:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 22:30:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码