【21天python打卡】第8天 基础技能(1)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: ​大家好,今天是21天python打卡的第8天,上一篇讲了如何创建python如何创建类,抽象类,访问限制的说明。今天说说python的相关技能,比如将时间日期的处理,数据文件的读写,以及数据库的简单操作。

时间日期的处理

python中时间处理主要使用的库是

datetime

1、datetime是内置模块,不需要安装,直接使用

import datetime

2、datetime里面有五个类:


date类:表示日期的类

time类:表示时间的类

datetime类:表示时间日期的类

timedelta类:表示两个datetime对象的差值;

tzinfo类:表示时区的相关信息

其中最常用的是datetime类,其包含了date类和time类


3、模块的使用;

datetime的简单使用


#获取当前日期
from datetime import datetime
now = datetime.now()
#获取今天
datetime.today()
#获取指定日期
datetime.date(y,m,d)
datetime.time(h,m,s)
datetime(y,m,d,h)
#输出指定格式
print('strftime():', now.strftime("%Y-%m-%d"))

timedelta的使用

from  datetime import *
now = datetime.now()
y = now + timedelta(days=-1) # 昨天
m = now + timedelta(days=1)  # 明天

4、使用案例:输出指定日期是星期几

# python3
#! coding=utf8
import datetime
year,month,day= 2022,3,15
weekday = ['周一','周二','周三','周四','周五','周六','周日']
i = datetime.date(year,month,day).weekday()
print(weekday[i])
i = datetime.date(year,month,day).isoweekday()
print(weekday[i-1])
wday = datetime.date(year,month,day).strftime('%a')
print(wday)

5、扩展,一个用来计算农历的库

zhdate

安装

pip install zhdate


数据文件读写

1、python文件读写的方式


文件读写就是一种常见的IO操作。python封装了操作系统的底层接口,直接提供了文件读写相关的操作方法;文件读写不需要额外引入第三方库;

一个文件读写的步骤:

1、从硬盘中读取一个文件路径

2、加载文件到内存中,获取文件对象(也叫文件句柄)

3、通过文件对象对对接进行读写操作

4、最后需要关闭文件;


2、打开一个文件:

1. #一般写法
2. f = open(file,mode,encoding=‘utf8’)


主要是三个参数,文件路径,打开模式,文件编码

关于可写可读的三个模式的区别:

  • r+ 覆盖当前文件指针所在位置的字符;
  • w+ 在打开文件时就会先将文件内容清空,适合重写;
  • a+ 只能写到文件末尾,适合追加;

3、文件读取:


file = '1.txt'
file_obj = open(file,‘r’,encoding='utf-8')
content = file_obj.read()
print(content)
file_obj.close()

以只读模式打开一个文件,读取内容,关闭文件;

使用with 方式,可以写文件关闭代码;

file = '1.txt'
with open(file,‘r’,encoding='utf-8') as file_obj:
    content = file_obj.read()
print(content)

按行读取:

file = '1.txt'
with open(file,‘r’,encoding='utf-8') as file_obj:           content = file_obj.readline() #读取一行
print(content)
for line in file_obj.readlines(): #读取多行
   print(line)    

4、文件的写入:

  • 写文件和读文件是一样的,唯一区别是调用open()函数时,传入标识符’w’,'w+'或者’wb’表示写文本文件或写二进制文件;
  • python提供了两个“写”方法: write() 和 writelines()。


数据库

1、目前主流的数据库有两种,

  • 一个是关系型数据库,如MySql
  • 一个是非关系型数据库 如mongodb

对与mysql和mongodb数据库,python中分别有对接的连接操作库


2、python连接mysql:

在python中,连接mysql用到的库是

pymysql


安装方法直接使用命令:

pip install pymsql


引入方式:

import pymysql


连接数据库:


db = pymysql.connect(host='127.0.0.1',

                    user='root',

                    password=1234567 ',

                    database='bookmanager')


获取游标:

cur = db.cursor()

关闭数据库:

db.close()

3、python连接mongodb的库是:

pymongo


安装以及引人:

pip install pymongo

import pymongo


建立数据库连接:

mongo_client = pymongo.MongoClient(“mongodb://192.168.1.200:30000”)



指定数据库:

mongo_db = mongo_client[“test”]

相关文章
|
安全 Python
Python并发编程必备技能:掌握threading模块,让你的代码跑得更快!
【8月更文挑战第22天】Python并发编程采用多线程技术实现任务的同时执行。利用`threading`模块可轻松管理和创建线程。通过`Thread`类实例化线程并用`start()`方法启动。线程同步通过`Lock`确保资源访问互斥,或用`Semaphore`控制并发数量。线程间通信则可通过`Queue`安全传递数据,实现生产者-消费者模式等功能。这些工具有效避免了竞态条件,确保了程序的正确性和效率。
218 1
|
4月前
|
数据采集 自然语言处理 分布式计算
大数据岗位技能需求挖掘:Python爬虫与NLP技术结合
大数据岗位技能需求挖掘:Python爬虫与NLP技术结合
|
测试技术 持续交付 Apache
深度挖掘:Python性能测试中JMeter与Locust的隐藏技能🔍
【8月更文挑战第5天】随着软件规模扩大,性能测试对系统稳定性至关重要。Apache JMeter和Locust是两大主流工具,各有千秋。本文探索它们在Python环境下的进阶用法,挖掘更多性能测试潜力。JMeter功能强大,支持多种协议,可通过命令行模式执行复杂测试计划,并与Python集成实现动态测试数据生成。Locust基于Python,通过编写简洁脚本模拟HTTP请求,支持自定义请求及与Python库深度集成。掌握这些技巧可实现高度定制化测试场景,有效识别性能瓶颈,提升应用稳定性。
227 1
|
11月前
|
SQL 存储 数据挖掘
使用Python和PDFPlumber进行简历筛选:以SQL技能为例
本文介绍了一种使用Python和`pdfplumber`库自动筛选简历的方法,特别是针对包含“SQL”技能的简历。通过环境准备、代码解析等步骤,实现从指定文件夹中筛选出含有“SQL”关键词的简历,并将其移动到新的文件夹中,提高招聘效率。
285 8
使用Python和PDFPlumber进行简历筛选:以SQL技能为例
|
机器学习/深度学习 算法 计算机视觉
【Python篇】Python + OpenCV 全面实战:解锁图像处理与视觉智能的核心技能
【Python篇】Python + OpenCV 全面实战:解锁图像处理与视觉智能的核心技能
384 7
|
存储 大数据 索引
解锁Python隐藏技能:构建高效后缀树Suffix Tree,处理大数据游刃有余!
通过构建高效的后缀树,Python程序在处理大规模字符串数据时能够游刃有余,显著提升性能和效率。无论是学术研究还是工业应用,Suffix Tree都是不可或缺的强大工具。
187 6
|
数据采集 网络协议 数据挖掘
网络爬虫进阶之路:深入理解HTTP协议,用Python urllib解锁新技能
【7月更文挑战第30天】网络爬虫是数据分析和信息聚合的关键工具。深入理解HTTP协议及掌握Python的urllib库对于高效爬虫开发至关重要。HTTP协议采用请求/响应模型,具有无状态性、支持多种请求方法和内容协商等特点。
178 3
|
机器学习/深度学习 数据挖掘 TensorFlow
解锁Python数据分析新技能,TensorFlow&PyTorch双引擎驱动深度学习实战盛宴
【7月更文挑战第31天】在数据驱动时代,Python凭借其简洁性与强大的库支持,成为数据分析与机器学习的首选语言。**数据分析基础**从Pandas和NumPy开始,Pandas简化了数据处理和清洗,NumPy支持高效的数学运算。例如,加载并清洗CSV数据、计算总销售额等。
212 2
|
机器学习/深度学习 数据挖掘 TensorFlow
解锁Python数据分析新技能,TensorFlow&PyTorch双引擎驱动深度学习实战盛宴
在数据驱动时代,Python凭借简洁的语法和强大的库支持,成为数据分析与机器学习的首选语言。Pandas和NumPy是Python数据分析的基础,前者提供高效的数据处理工具,后者则支持科学计算。TensorFlow与PyTorch作为深度学习领域的两大框架,助力数据科学家构建复杂神经网络,挖掘数据深层价值。通过Python打下的坚实基础,结合TensorFlow和PyTorch的强大功能,我们能在数据科学领域探索无限可能,解决复杂问题并推动科研进步。
227 0
|
算法 数据挖掘 计算机视觉
Python并查集实战宝典:从入门到精通,让你的数据结构技能无懈可击!
【7月更文挑战第17天】并查集,如同瑞士军刀,是解决元素分组问题的利器,应用于好友关系、像素聚类、碰撞检测和连通性分析等场景。本文从基础到实战,介绍并查集的初始化、查找与路径压缩、按秩合并,以及在Kruskal算法中的应用。通过并查集,实现高效动态集合操作,对比哈希表和平衡树,其在合并与查找上的性能尤为突出。学习并查集,提升算法解决复杂问题的能力。
224 5

推荐镜像

更多