当前位置: 首页 > news >正文

Python学习笔记10:开箱即用

开箱即用

模块

  1. python系统路径
import sys, pprint
pprint.pprint(sys.path)
['','D:\\Program Files\\Python\\Lib\\idlelib','D:\\Program Files\\Python\\python310.zip','D:\\Program Files\\Python\\DLLs','D:\\Program Files\\Python\\lib','D:\\Program Files\\Python','D:\\Program Files\\Python\\lib\\site-packages']
  1. 探索模块
# 1. 导入
>>> import copy# 2. 查明模块包含哪些东西
>>> [n for n in dir(copy) if not n.startswith('_')] 
['Error', 'PyStringMap', 'copy', 'deepcopy', 'dispatch_table', 'error', 'name', 't', 'weakref']# 3. 直接咨询这个模块来获得包含的内容,即共有接口
# 它告诉解释器从这个模块导入所有的名称意味着什么 from copy import *
>>> copy.__all__ 
['Error', 'copy', 'deepcopy']# 4. 使用help
>>> help(copy)
>>> help(copy.copy)
Help on function copy in module copy:copy(x)Shallow copy operation on arbitrary Python objects.See the module's __doc__ string for more info.>>> print(copy.copy.__doc__)
Shallow copy operation on arbitrary Python objects.See the module's __doc__ string for more info.# 5. 查看源代码
>>> print(copy.__file__) 
C:\Python35\lib\copy.py 
找到了!你可在代码编辑

标准库的一些模块

  1. sys
函数/变量描述
argv命令行参数,包括脚本名
exit([arg])退出当前程序,可通过可选参数指定返回值或错误消息
modules一个字典,将模块名映射到加载的模块
path一个列表,包含要在其中查找模块的目录的名称
platform一个平台标识符,如sunos5或win32
stdin标准输入流——一个类似于文件的对象
stdout标准输出流——一个类似于文件的对象
stderr标准错误流——一个类似于文件的对象
  1. os
函数/变量描述
environ包含环境变量的映射
system(command)在子shell中执行操作系统命令
sep路径中使用的分隔符
pathsep分隔不同路径的分隔符
linesep行分隔符(‘\n’、‘\r’或’\r\n’)
urandom(n)返回n个字节的强加密随机数据
  1. fileinput
函数描述
input([files[, inplace[, backup]]])帮助迭代多个输入流中的行
filename()返回当前文件的名称
lineno()返回(累计的)当前行号
filelineno()返回在当前文件中的行号
isfirstline()检查当前行是否是文件中的第一行
isstdin()检查最后一行是否来自sys.stdin
nextfile()关闭当前文件并移到下一个文件
close()关闭序列

在python脚本中添加行号

# numberlines.py 
import fileinput 
for line in fileinput.input(inplace=True): line = line.rstrip() num = fileinput.lineno() print('{:<50} # {:2d}'.format(line, num))$ python numberlines.py numberlines.py

添加行号后的行号添加程序

# numberlines.py                                # 1 # 2 
import fileinput                                # 3 # 4 
for line in fileinput.input(inplace=True):      # 5 line = line.rstrip()                           # 6 num = fileinput.lineno()                       # 7 print('{:<50} # {:2d}'.format(line, num))      # 8

小结

模块:模块基本上是一个子程序,主要作用是定义函数、类和变量等。模块包含测试代码时,应将这些代码放在一条检查name == 'main’的if语句中。如果模块位于环境变量PYTHONPATH包含的目录中,就可直接导入它;要导入存储在文件foo.py中的模块,可使
用语句import foo。

探索模块:在交互式解释器中导入模块后,就可以众多不同的方式对其进行探索,其中包括使用dir、查看变量__all__以及使用函数help。文档和源代码也是获取信息和洞见的极佳来源。

标准库:Python自带多个模块,统称为标准库。本章介绍了其中的几个。

  • sys:这个模块让你能够访问多个与Python解释器关系紧密的变量和函数。
  • os:这个模块让你能够访问多个与操作系统关系紧密的变量和函数。
  • fileinput:这个模块让你能够轻松地迭代多个文件或流的内容行。
  • sets、heapq和deque:这三个模块提供了三种很有用的数据结构。内置类型set也实现
    了集合。
  • time:这个模块让你能够获取当前时间、操作时间和日期以及设置它们的格式。
  • random:这个模块包含用于生成随机数,从序列中随机地选择元素,以及打乱列表中元
    素的函数。
  • shelve:这个模块用于创建永久性映射,其内容存储在使用给定文件名的数据库中。
  • re:支持正则表达式的模块。
http://www.lryc.cn/news/25248.html

相关文章:

  • 详解JAVA反射
  • 在nestjs中进行typeorm cli迁移(migration)的配置
  • 前端工程构建问题汇总
  • 某马程序员NodeJS速学笔记
  • SpringMVC DispatcherServlet源码(6) 完结 静态资源原理
  • 2023年全国最新会计专业技术资格精选真题及答案9
  • Web3中文|把Web3装进口袋,Solana手机Saga有何魔力?
  • 【配电网优化】基于串行和并行ADMM算法的配电网优化研究(Matlab代码实现)
  • 数据结构初阶 -- 顺序表
  • uniapp:3分钟搞定在线推送uni.createPushMessage,uni.onPushMessage
  • C/C++开发,无可避免的多线程(篇一).跨平台并行编程姗姗来迟
  • 如何把照片的底色修改为想要的颜色
  • 【高效办公】批量生成固定模板的文件夹名称
  • redis的集群方式
  • 温控负荷的需求响应潜力评估及其协同优化管理研究(Matlab代码实现)
  • 模电学习9. MOS管使用入门
  • 【算法】【数组与矩阵模块】正数组中累加和为给定值的最长子数组长度,空间复杂度O(1)解法
  • 3.1.2 创建表
  • 使用netlify实现自动化部署前端项目(无服务器版本)
  • MATLAB点云数据处理(二十九):可视化点云之pcshow参数详解与快捷键操作
  • 顺序表——重置版
  • PyQt5自然语言处理入门案例笔记
  • 使用 CSS 替换表行颜色?
  • 智能家居控制系统
  • Linux 进程:fork()与vfork()的对比
  • 环境搭建02-Ubuntu16.04 安装CUDA和CUDNN、CUDA多版本替换
  • HOT100--(3)无重复字符的最长子串
  • vue keep-alive多层级路由支持
  • 从源码角度看React-Hydrate原理
  • ARM基础 -- 2