Python 常用的内置模块

在这篇文章中,我们来学习Python常用的一些内置模块的基本操作!

1. sys

sys.argv

代码:

1.py

import sys

print(sys.argv)

解释:

程序的命令行参数

实例:

通过cmd运行该程序,并添加一些参数

可以看到返回值是一个列表,列表的第一个值为文件路径,后面的就是添加的一些参数

sys.exit()

顾名思义,就是退出程序

代码:

import sys

print(1)
print(sys.exit())
print(2)

输出:

解释:

通过sys.exit退出后不会返回任何东西,pycharm提供的stub中的代码如下:

 可见它的返回值是NoReturn,也就是没有返回值(None)

程序停止后,不会运行print(2),所以控制台没有这个输出

sys.exit中传入一个参数默认为0,尝试向它传入一个数:

代码:

import sys

print(sys.exit(0x5c6b))

没有任何输出,程序以十六进制数5c6b(23659)结束

我们尝试传入一些其他的数据类型

代码:

import sys

print(sys.exit(dict()))

输出:

也就是说传入一些非数字的参数会用红色字体输出并以1结束程序

sys.modules

代码:

import sys

print(sys.modules)

输出:

解释:

sys.modules是一个字典,包含了所有库的信息

sys.platform

sys.platform表示系统的类型

sys.stdout 

代码:

import sys

sys.stdout.write("abcdefg")
sys.stdout.write("hello")

输出:

解释:

stdout是标准输出流,write方法直接写入输出内容,相当于print,但是这里不会自带换行

sys.stderr

代码:

import sys

sys.stderr.write(str("Error: Something Wrong!"))

输出:

解释:

标准错误流,同sys.stdin,sys.stdout都是TextIO对象,stub代码如下:


os

os.getcwd() & os.path.exists() & os.chdir()

代码:

1.py

import os

print(os.getcwd())
print(os.path.exists("test.txt"))
print(os.path.exists("folder"))
print(os.chdir("folder"))
print(os.getcwd())
print(os.path.exists("test.txt"))
print(os.path.exists("folder"))

文件目录

输出:

 

解释:

os.getcwd() 返回当前的工作目录

os.path.exists(文件名) 是否存在文件

os.chdir() 切换工作目录

代码运行:

输出工作目录

一开始的工作目录下只有folder和1.py所以第二个输出为False

chdir无返回值,输出None

输出新的工作目录

工作目录下包含test.txt,输出True

工作目录下不包含folder文件夹,输出False

os.mkdir() & os.rename() & os.rmdir()

目录:

2.py代码如下:

import os

os.mkdir("nf1")
os.mkdir("nf2")
os.mkdir("nf3")
os.mkdir("nf4")
os.rmdir("nf3")
os.rename("nf4","renamenf4")

 运行后目录:

解释:

mkdir创建文件夹

rmdir删除文件夹

rename重命名文件/文件夹

代码运行:

创建nf1 nf2 nf3 nf4四个文件夹

将nf3删除

将nf4重命名为renamenf4 

区别 os.remove() & os.rmdir()

目录:

2.py代码:

import os

os.remove("nf.txt")
os.rmdir("nf")

解释:

remove用于删除文件,rmdir用于删除文件夹,运行后nf.txt和nf全部被删除

错误示范:

尝试用remove删除nf文件夹

import os

os.remove("nf")

抛出PermissionError错误

错误示范:

尝试用rmdir删除nf.txt

import os

os.rmdir("nf.txt")

抛出罕见的NotADirectoryError(非文件夹)错误

os.system()

代码

import os

os.system("calc")

效果:

打开了计算器

解释:

os.system方法执行cmd控制台命令,calc即打开计算器


time

time.time()

代码:

import time

print(time.time())

输出

1660023826.7452953

解释:

该方法返回从1970年1月1日0时0分0秒到现在经过的时间(秒)

time.localtime()

代码:

import time

now=time.localtime(time.time())
print(now)
print(now.tm_isdst)
print(now.tm_year)
print(now.tm_mon)
print(now.tm_mday)
print(now.tm_hour)
print(now.tm_min)
print(now.tm_sec)
print(now.tm_wday)
print(now.tm_yday)

输出:

time.struct_time(tm_year=2022, tm_mon=8, tm_mday=9, tm_hour=13, tm_min=47, tm_sec=21, tm_wday=1, tm_yday=221, tm_isdst=0)
0
2022
8
9
13
47
21
1
221

解释:

localtime获取本地的时间

程序输出从上到下依次为:

struct_time对象;是否为夏令时;年;月;日;时;分;秒;星期几,周一到周日依次为0到6;一年中的第几天


datetime

代码:

from datetime import datetime as dt

print(dt.now())

输出:

2022-08-09 13:55:49.861965

代码:

from datetime import datetime as dt

print(dt.today())

输出:

2022-08-09 13:59:37.289791

strftime进行格式化操作

解释:

today和now实现的效果都一样,返回年月日时分秒毫秒

代码:

from datetime import datetime as dt

print(dt.today().strftime("%Y-%m-%d"))

输出

2022-08-09

strftime格式化操作: 

%y两位数年份
%Y四位数年份
%m月份
%d
%H24小时 小时数
%I (大写字母i)12小时 小时数
%M分钟
%S
%a星期(简化)
%A星期(完整)
%b月份(简化)
%B月份(完整)
%j一年的第n天
%U一年中的第n个星期,一周在周日开始
%w星期,一周在周日开始,0表示周日
%W一年中的第n个星期,一周在周一开始
%Z时区
%%百分号

代码:

from datetime import datetime as dt

print(dt.today().strftime("%Y-%m-%d %H:%M:%S"))
print(dt.today().strftime("%a %A %b %B %j"))

输出:

2022-08-09 14:10:53
Tue Tuesday Aug August 221

math

代码:

from math import *

print(pi) # 圆周率
print(e) # 自然常数
print(ceil(85.123)) # 向上取整
print(ceil(85.987))
print(floor(75.352)) # 向下取整
print(floor(75.959))
print(pow(7,3)) # 7的3次方
print(sqrt(2)) # 开平方根
print(sin(45)) # 正弦
print(cos(45)) # 余弦
print(tan(45)) # 正切
print(fabs(-1423.324)) # 绝对值
print(radians(50)) # 求弧度
print(fsum(range(1,101))) # 求和
print(log(16384,2)) # 以2为底的16384的对数
print(log2(65536)) # 以2为底的65536的对数
print(log10(100000000000)) # 以10为底的100000000000的对数
print(factorial(15)) # 阶乘:15!

输出:

3.141592653589793
2.718281828459045
86
86
75
75
343.0
1.4142135623730951
0.8509035245341184
0.5253219888177297
1.6197751905438615
1423.324
0.8726646259971648
5050.0
14.0
16.0
11.0
1307674368000

解释:

注释已经写在上方代码里啦!


好了!本次的教程就到这里!喜欢的话别忘了点赞收藏+关注哦!

谢谢支持!

  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值