python教程22-导入模块的几种方式、os模块、sys模块、math模块、random模块、datetime模块等的使用

python教程_小白入门2020/10/29

学习目标
在这里插入图片描述

P135 导入模块的5种方式
#  导入模块的方法
# @author :zhangjiong
# 在python里,一个py文件就可以理解为一个模块
# 不是所有的py文件都可以作为模块被导入的
# 要想一个py文件能够被导入,模块的名字必须要遵守命名规则
# python为了便于程序员开发,提供了很多内置模块

# 导入方式1:使用inport + 模块名的方式进行导入(使用的最多的一个导入方式)
import time
# 导入模块以后,就可以使用这个模块里的方法和变量
print(time.time())      # 1603939603.7137105

# 导入方式2:导入一个模块里的方法或者变量
from random import randint  # from模块名 import函数名
x = randint(0, 2)  # 生成[0,2]的随机整数
print(x)        # 1

# 导入方式3:导入一个模块里的“所有”变量和方法
from math import *
print(pi)       # 3.141592653589793

# 导入方式4:导入一个模块并给这个模块起一个别名 使用的第二多的导入方式
import datetime as dt
print(dt.MAXYEAR)       #9999

# 导入方式5:from 模块名 import 函数名 as 别名
from copy import deepcopy as dp

P136 os模块的使用
#  os模块---operationsystem操作系统
# @author :zhangjiong
# os模块里提供的方法就是用来调用操作系统里的方法

import os

# os.name  ===>获取操作系统的名字
# windows系列 ===nt  非windows ===>posix
print(os.name)  # nt
print(os.sep)  # \     路径的分隔符
# os.path   最常用的
print(os.path)  # <module 'ntpath' from 'D:\\python3.8.2\\lib\\ntpath.py'>

# 获取文件的绝对路径abspath
print(os.path.abspath('main.py'))  # D:\pycharm\projects\pythoncourse\main.py

# 用来判断一个文件是否是文件夹,是为True,否为False
print(os.path.isdir("main.py"))  # False

# 用来判断一个文件是否是文件,文件夹不是文件
print(os.path.isfile("main.py"))  # True

# 用来判断一个文件是否存在
print(os.path.exists("main.py"))  # True

# 获取文件的文件名和后缀名
file_name1 = '2020.10.30.demo.py'
print(file_name1.rpartition('.'))
# ('2020.10.30.demo', '.', 'py')  # 得到一个元组,元组的第一个就是文件名,第二个就是分隔符,第三个就是后缀名
file_name2 = '2020.10.31.demo.py'
print(os.path.splitext(file_name2))
# ('2020.10.31.demo', '.py')        # 得到一个元组,元组第一个文件名,第二个为后缀名

# 其他方法
os.getcwd()  # 获得当前工作目录,即当前 Python 脚本工作的目录路径。
os.listdir()  # 获取当前项目下所有的文件,包括文件和文件名
os.chdir('../')  # 修改目录(返回上一层)
os.remove('')  # 删除一个文件
os.path.getsize('name')  # 获取文件大小,以字节为单位
P137 sys模块的使用
# sys模块:系统相关功能
# @author :zhangjiong


import sys
import random
# print("hello world")
# sys.exit()      # exit是将 程序终止掉,下边的代码便不会再执行
# sys.exit()和内置函数exit()的功能一样
print("呵呵呵")

# 程序若正常执行,退出码应该为0
# exit(100)       # Process finished with exit code 100
# exit()为程序结束后赋予一个指定的结束码

print(sys.path)     # 结果是一个列表
# 表示查找模块的路径,把要导入的模块放到以下任意一个路径中都可以被找到
# ['D:\\pycharm\\projects\\pythoncourse',
#  'D:\\pycharm\\projects\\pythoncourse',
#  'D:\\pycharm\\PyCharm2020.2\\plugins\\python\\helpers\\pycharm_display',
#  'D:\\python3.8.2\\python38.zip',
#  'D:\\python3.8.2\\DLLs',
#  'D:\\python3.8.2\\lib',
#  'D:\\python3.8.2',
#  'D:\\pycharm\\projects\\pythoncourse\\venv',
#  'D:\\pycharm\\projects\\pythoncourse\\venv\\lib\\site-packages',
#  'D:\\pycharm\\PyCharm2020.2\\plugins\\python\\helpers\\pycharm_matplotlib_backend']

sys.stdin   # 接收用户的输入,和input相关
# 可以和input函数一样,接受用户的输入,拿到的是文件的对象,和文件操作有关,暂且不讲stdin的功能比input的功能更为强大
input("请输入用户名:")
sys.stdout  # 标准输出,功能比print更强大,修改后可以改变默认输出位置
sys.stderr  # 修改sys.stderr可以改变错误输出的默认位置,默认的都是在控制台打印,一旦出错,控制台就崩了,但是使用这个方法,可以将错误信息打印在某个设定的文件里,控制台就不会崩掉

P138 math模块的使用
# math模块:数学计算相关的模块
# @author :zhangjiong

import math

math.factorial(6)  # 求阶乘
math.floor(12.98)  # 向下取整
math.ceil(15.001)  # 向上取整
math.pow(2, 10)  # 求2的10次方,等同于2**10,等同于内置函数里pow(2,10)
round(4.5)          # round 内置函数而非math中的方法,实现四舍五入的功能

# 三角函数   要的是弧度,Π = 180°
print(math.sin(math.pi/6))  # 0.49999999999999994
print(math.tan(math.pi / 3))    # 1.7320508075688767
P 139 random模块的使用
# random模块用来生成一个随机的数字
# @author :zhangjiong
import random

# 生成2-9之间的整数,包括2也包括9
print(random.randint(2, 9))  # 2

# 生成0-1之间的随机浮点数,包含0但是不包含1   [0,1)
print(random.random())  # 0.1911717116995042

# randrange(a,b)  生成[a,b)之间的随机浮点数
print(random.randrange(2, 9))  # 3

# choice 用来在列表里或者可迭代对象里随机抽取一个数据
print(random.choice(['zhangsan', 'lisi', 'jack', 'herry', 'huamulan', 'sunwukong']))
# herry

# sample 用来在可迭代对象里随机抽取n个数据
print(random.sample(['zhangsan', 'lisi', 'jack', 'herry', 'huamulan', 'sunwukong'], 2))
# ['jack', 'herry']
P 140 datetime模块
# datetime 模块
# @author :zhangjiong
# datetime模块主要用来显示日期时间,这里主要涉及date类,用来显示日期,time类,用来显示时间
# datetime类,用来显示日期时间,timedelta类用来计算时间

import datetime as dt

# 以一个下划线 开始 _x  不能用
# 以两个下划线 开始 __x
# 以两个下划线开始,再以两个下划线结束  __x__

print(dt.datetime.now())        # 获取当前时间datetime.now()
# 2020-10-30 14:47:11.025396
# 选择一行代码,使用快捷键 shift + alt + 上方向键  ----将整行代码移动

# 创建一个日期
print(dt.date(2020, 1, 1))  # 2020-01-01

# 创建一个时间
print(dt.time(18, 23, 45))      # 18:23:45

# 计算三天之后的 日期时间
print((dt.datetime.now() + dt.timedelta(3)))        # 2020-11-02 14:55:10.152244

# 内置类--可以理解为函数,功能上都差不多
# list tuple int str
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值