宁波python学习_python学习第五天

一 常用模块

定义:可以实现某种功能的.py结尾的python文件,文件名为test.py,则模块名为test

导入方法

import   模块名

import  模块名1,模块名2

from 模块名 import *           不建议使用这种方法,容易引起模块中的方法被程序中的同名方法覆盖的错误

from 模块名 import  方法名1,方法名2

from 模块名 import 方法名 as 别名

import本质

import 包名   执行包中的__init__.py

import 模块名   将模块中所有代码赋值给以这个模块名命名的变量

from 模块名 import 方法名    把指定方法的代码赋值给以这个方法名命名的变量

导入优化

使用from   import方式导入模块方法,加快程序运行速度

模块分类

标准模块

time模块

'''输出当前时间的时间戳'''

print(time.time())

'''程序停止几秒'''

# time.sleep(2)

'''时间戳转换为时间元组形式,以UTC时区为标准'''

print(time.gmtime())

'''时间戳转换为时间元组形式,以本地时区为标准'''

print(time.localtime())

x =time.localtime()

'''提取时间元组中的元素'''

print(x.tm_mday)

'''时间元组转换成时间戳'''

print(time.mktime(time.localtime()))

'''时间元组转换成格式化的时间'''

print(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()))

'''格式化时间转换成指定格式的时间元组'''

print(time.strptime(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()),"%Y-%m-%d %H:%M:%S"))

'''时间元组转换成时间字符串'''

print(time.asctime(time.localtime()))

'''时间戳转换成时间字符串'''

print(time.ctime(time.time()))

datetime模块

'''获取当前时间'''

print(datetime.datetime.now())

'''获取当前日期几天前或几天后的时间,负数代表几天前,正数代表几天后'''

print(datetime.datetime.now()+datetime.timedelta(-1))

random模块

'''获取随机浮点数,范围0-1'''

print(random.random())

'''获取随机浮点数,范围自定义'''

print(random.uniform(3,6))

'''获取随机整数,范围自定义'''

print(random.randint(3,8))

'''获取随机整数,范围自定义,范围左闭右开'''

print(random.randrange(3,8))

'''在传入序列中获取一位随机值'''

print(random.choice([2,5,"a",9]))

'''在传入序列中取出指定位数的值,以列表形式返回'''

print(random.sample([2,5,"a",9],2))

'''将传入序列的顺序打乱'''

list =[2,5,"a",9]

random.shuffle(list)

print(list)

import random

checkcode =""

for i in range(4):

current = random.randrange(0,4)

if current == i:

tmp = chr(random.randint(65,90))

else:

tmp = random.randint(0,9)

checkcode += str(tmp)

print(checkcode)

以上代码实现输出四位验证码的功能

os模块

'''获取当前的操作目录'''

print(os.getcwd())

'''切换工作目录'''

os.chdir("/root")

'''递归的创建目录'''

# os.makedirs("/root/a/b/c/")

'''递归删除空目录'''

# os.removedirs("/root/a/b/c/")

'''创建目录,无法递归创建'''

# os.mkdir("/root/a/")

'''删除指定目录,无法递归删除'''

# os.rmdir("/root/a/")

'''列出指定目录下的所有内容'''

print(os.listdir("/root/"))

'''重命名文件或目录'''

# os.rename("/root/test.txt","/root/3-30.txt")

'''查看文件属性'''

print(os.stat("/root/3-30.txt"))

'''输出当前系统的路径分隔符'''

print(os.sep)

'''输出当前系统的换行符'''

print(os.linesep)

'''输出当前系统的文件路径分隔符'''

print(os.pathsep)

'''输出当前系统类型'''

print(os.name)

'''执行当前系统的操作命令,不保存结果'''

os.system("ls")

'''执行当前系统的操作命令,结果保存在内存中,使用read方法获取'''

print(os.popen("ls").read())

'''输出系统环境变量'''

print(os.environ)

'''输出文件绝对路径'''

print(os.path.abspath("3-30.txt"))

'''分隔文件目录路径和文件名'''

print(os.path.split("/root/3-30.txt"))

'''输出文件路径中的目录部分'''

print(os.path.dirname("/usr/local/bin/a.txt"))

'''输出文件路径中的文件名部分'''

print(os.path.basename("/usr/local.bin/a.txt"))

'''判断路径是否存在'''

print(os.path.exists("/usr/local/a.txt"))

'''判断输入的是否为绝对路径'''

print(os.path.isabs("3-20.txt"))

'''判断输入的是否为一个存在的文件'''

print(os.path.isfile("3-20.txt"))

'''判断输入的是否为一个存在的目录'''

print(os.path.isdir("/usr/"))

'''将输入的多个路径组合返回,最后一个绝对路径前的内容会被忽略'''

print(os.path.join("a","/usr","local","a.txt"))

'''输出文件或目录最后的存取时间'''

print(os.path.getatime(__file__))

'''输出文件或目录最后的修改时间'''

print(os.path.getmtime(__file__))

sys模块

sys.argv

sys.exit()  退出程序,正常推出为exit(0)

sys.version 获取python解释器版本信息

sys.maxint 最大Int值

sys.path 返回python环境变量值

sys.platform 返回操作系统平台名称

sys.stdout.write()

val = sys.stdin.readline()[:-1]

shutil模块

shutil.copyfileobj()  传入两个文件对象,复制源文件内容到目标文件

shutil.copyfile() 输入源文件名,目标文件名进行复制

shutil.copymode()   将源文件权限模式复制给目标文件

shutil.copystat()  将源文件属性复制给目标文件

shutil.copy()    复制文件和权限

shutil.copy2() 复制文件和权限和状态信息

shutil.copytree() 递归的复制文件

shutil.rmtree() 递归删除目录

shutil.move() 递归移动文件

shutil.make_archive("压缩包名或路径","压缩类型","要压缩文件的路径")

shelve模块

通过key-value将内存数据通过文件持久化

import shelve

d =shelve.open("shelve_test")

name =[1,2,3,4]

info = {"name":"lf","age":23}

d["name"] =name  列表持久化

d["info"] =info  字典持久化

d.close()

print(d.get("info"))  取出持久化文件内容

xml模块

import xml.etree.ElementTree as ET

tree = ET.parse("xmltest.xml")

root = tree.getroot()

print(root.tag)

# 遍历xml文档

for child in root:

print(child.tag, child.attrib)  打印xml标签,属性

for i in child:

print(i.tag, i.text)  打印标签,文本

# 只遍历year 节点

for node in root.iter('year'):

print(node.tag, node.text)

#修改

for node in root.iter('year'):

new_year = int(node.text) +1

node.text =str(new_year)

node.set("updated_by","Alex")

tree.write("xmltest.xml")

#删除

for country in root.findall('country'):

rank =int(country.find('rank').text)

if rank > 50:

root.remove(country)

tree.write("output.xml")

创建

import xml.etree.ElementTree as ET

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/409361.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android管理员和普通用户登录,asp登录页如何区别管理员和普通用户,登录后跳转到不同页面?...

数据库表 user表 中,username(用户名) pass(密码) type(超级管理员、高级发文者) cname(单位名称)登录页index.aspif request.Form("submit")"登陆系统" thenusertrim(request.Form("uname"))passucase(md5(request.Form("pass&…

envoy实现_如何利用 Envoy 的 Postgres 过滤器实现网络可观察性

作者:Christoph Pakulski自发布版本 1.15.0 起,Envoy 代理就开始支持 Postgres 信息解码用于统计目的了。该功能为网络中发生的 Postgres 事务提供聚合视图。有了聚合视图,Postgres 作业的种类、故障的数量和严重性瞬间一目了然。通过时间序列…

android无感刷新下拉分页,GitHub - TakWolf/Android-RefreshAndLoadMore-Demo: 一种简单的并且优雅的方式实现下拉刷新和加载更多的分页效果。...

Android - RefreshAndLoadMore Demo一种简单的并且优雅的方式实现下拉刷新和加载更多的分页效果。包含 ListView 和 RecyclerView 两种组件的对应实现。下拉刷新基于 SwipeRefreshLayout 实现。加载更多通过在列表底部添加 FooterView 实现。考虑了第一次请求数据填充不足一屏的…

神经网络与机器学习 第一讲(2)——什么是神经网络

一、为什么要研究神经计算 1. 理解人脑是怎样工作的 2. 理解利用神经元和连接所形成的并行计算(这与串行计算很不相同): 1) 能够做好人脑擅长的事情(vision) 2) 做不好人脑不擅长的事情(23*45) …

弹性法计算方法的mck法_粘弹性自由阻尼加筋板的随机响应分析和试验研究

0 引 言船舶在营运过程中可能产生有害振动并影响正常运营,此时需要对船体结构采取有效的减振措施,在结构上敷设阻尼是常用、高效的减振方法之一[。要达到良好的减振效果,需要选取合适的阻尼材料和合理的敷设方式。粘弹性阻尼材料由于其性能参…

自定义圆形倒计时Android,Android自定义View倒计时圆

本文实例为大家分享了Android自定义View倒计时圆的具体代码,供大家参考,具体内容如下创建attr创建DisplayUtil 类import android.content.Context;/*** Created by 王 on 2017/10/21.*/public class DisplayUtil {/*** 将px装换成dp,保证尺寸…

网络编程的4种IO模型

selectFD_ZERO初始化FD_SET将socket加进去select轮询当socket的事件发生时,fd_set里面有相关的socket,如果没有socket有事件发生,select返回0FD_ISSET检测,socket是否还在fd_set里,是的话,表示这个socket有…

pandas 合并所有列_图解Python表格操作包Pandas

Pandas 是 Python 的核心数据分析支持库,提供了快速、灵活、明确的数据结构,旨在简单、直观地处理关系型、标记型数据。Pandas 的目标是成为 Python 数据分析实践与实战的必备高级工具,其长远目标是成为最强大、最灵活、可以支持任何语言的开…

android ndk gcc,Android NDK GCC似乎是铿锵的 - 它应该是这样吗?

刚刚下载的NDK在链接旧项目时失败:/usr/bin/ld: unrecognised emulation mode: armelf_linux_eabi看来,clang隐藏在gcc的面具后面:/opt/android-ndk-r18b/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc --versionAndroid (475164…

三年的php简历_PHP程序员个人简历

PHP程序员个人简历2003/10—现在:***公司所属行业:计算机软件*&*银沙网站PHP程序员主要职责:能独立应用PHPMySQL进行网站开发,合理的应用PHPMVC模式,并使用Smarty或使用自制的.类似Smarty缓冲机制的模版引擎。了解…

VC小技巧(网上搜的)

一、打开CD-ROM mciSendString("Set cdAudio door open wait",NULL,0,NULL); 二、关闭CD_ROM mciSendString("Set cdAudio door closed wait",NULL,0,NULL); 三、关闭计算机 OSVERSIONINFO OsVersionInfo; //包含操作系统版本信息的数据结构 OsVersionInfo…

html下划线 下移,css如何实现下划线滑动效果

本文主要讲述两种下划线动效效果,第一种悬停时X轴由内向外展开实现动画效果,第二种为左右自动展示,由左向右,或由右向左。实现的主要效果是利用伪类标签,以及hover,利用transfromm trition实现动画效果。x轴由内向外展…

已知网友建立html,职称计算机模拟试题:Dreamweaver网页设计模拟试题及答案(5)...

52、在使用时间链时,用“Record Path of Layer”命令记录层的路径,关于关键点的说法正确的是(CD)A、用户拖动层的速度越快,则划分出的关键点越多B、用户拖动层的速度越快,则划分出的关键点越少C、用户可以通过改变拖动的速度来变更…

r语言 将表格导出为csv_如何将R语言中表格数据输出为Excel文件.pdf

如何将R 语言中的表格数据输出为Excel 文件熊荣川六盘水师范学院生物信息学实验室xiongrongchuan126.com/u/Bearjazz平台的开放性使得R 语言具有了丰富的运算功能,使得一些表格数据不能在Excel 中实现的运算(或是较为繁琐的运算)可以在导入R 语言之后得到快速而容易…