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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: ​大家好,今天是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”]

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
相关文章
|
4月前
|
安全 Python
Python并发编程必备技能:掌握threading模块,让你的代码跑得更快!
【8月更文挑战第22天】Python并发编程采用多线程技术实现任务的同时执行。利用`threading`模块可轻松管理和创建线程。通过`Thread`类实例化线程并用`start()`方法启动。线程同步通过`Lock`确保资源访问互斥,或用`Semaphore`控制并发数量。线程间通信则可通过`Queue`安全传递数据,实现生产者-消费者模式等功能。这些工具有效避免了竞态条件,确保了程序的正确性和效率。
67 1
|
11天前
|
SQL 存储 数据挖掘
使用Python和PDFPlumber进行简历筛选:以SQL技能为例
本文介绍了一种使用Python和`pdfplumber`库自动筛选简历的方法,特别是针对包含“SQL”技能的简历。通过环境准备、代码解析等步骤,实现从指定文件夹中筛选出含有“SQL”关键词的简历,并将其移动到新的文件夹中,提高招聘效率。
32 8
使用Python和PDFPlumber进行简历筛选:以SQL技能为例
|
4月前
|
测试技术 持续交付 Apache
深度挖掘:Python性能测试中JMeter与Locust的隐藏技能🔍
【8月更文挑战第5天】随着软件规模扩大,性能测试对系统稳定性至关重要。Apache JMeter和Locust是两大主流工具,各有千秋。本文探索它们在Python环境下的进阶用法,挖掘更多性能测试潜力。JMeter功能强大,支持多种协议,可通过命令行模式执行复杂测试计划,并与Python集成实现动态测试数据生成。Locust基于Python,通过编写简洁脚本模拟HTTP请求,支持自定义请求及与Python库深度集成。掌握这些技巧可实现高度定制化测试场景,有效识别性能瓶颈,提升应用稳定性。
130 1
|
2月前
|
机器学习/深度学习 算法 计算机视觉
【Python篇】Python + OpenCV 全面实战:解锁图像处理与视觉智能的核心技能
【Python篇】Python + OpenCV 全面实战:解锁图像处理与视觉智能的核心技能
99 2
|
3月前
|
存储 大数据 索引
解锁Python隐藏技能:构建高效后缀树Suffix Tree,处理大数据游刃有余!
通过构建高效的后缀树,Python程序在处理大规模字符串数据时能够游刃有余,显著提升性能和效率。无论是学术研究还是工业应用,Suffix Tree都是不可或缺的强大工具。
63 6
|
3月前
|
机器学习/深度学习 数据挖掘 TensorFlow
解锁Python数据分析新技能,TensorFlow&PyTorch双引擎驱动深度学习实战盛宴
在数据驱动时代,Python凭借简洁的语法和强大的库支持,成为数据分析与机器学习的首选语言。Pandas和NumPy是Python数据分析的基础,前者提供高效的数据处理工具,后者则支持科学计算。TensorFlow与PyTorch作为深度学习领域的两大框架,助力数据科学家构建复杂神经网络,挖掘数据深层价值。通过Python打下的坚实基础,结合TensorFlow和PyTorch的强大功能,我们能在数据科学领域探索无限可能,解决复杂问题并推动科研进步。
71 0
|
4月前
|
算法 关系型数据库 程序员
程序员必备技能)基于Python的鼠标与键盘控制实战扩展与源码
这篇文章是关于如何使用Python的`pyautogui`库来控制鼠标和键盘进行各种操作,包括移动、点击、滚轮控制以及键盘的按键和快捷键输出,并介绍了如何结合图像处理和计算机视觉技术来扩展其应用。
|
5月前
|
数据采集 网络协议 数据挖掘
网络爬虫进阶之路:深入理解HTTP协议,用Python urllib解锁新技能
【7月更文挑战第30天】网络爬虫是数据分析和信息聚合的关键工具。深入理解HTTP协议及掌握Python的urllib库对于高效爬虫开发至关重要。HTTP协议采用请求/响应模型,具有无状态性、支持多种请求方法和内容协商等特点。
54 3
|
5月前
|
机器学习/深度学习 数据挖掘 TensorFlow
解锁Python数据分析新技能,TensorFlow&PyTorch双引擎驱动深度学习实战盛宴
【7月更文挑战第31天】在数据驱动时代,Python凭借其简洁性与强大的库支持,成为数据分析与机器学习的首选语言。**数据分析基础**从Pandas和NumPy开始,Pandas简化了数据处理和清洗,NumPy支持高效的数学运算。例如,加载并清洗CSV数据、计算总销售额等。
63 2
|
4月前
|
数据采集 数据挖掘 数据处理
解锁Python数据分析新技能!Pandas实战学习,让你的数据处理能力瞬间飙升!
【8月更文挑战第22天】Python中的Pandas库简化了数据分析工作。本文通过分析一个金融公司的投资数据文件“investment_data.csv”,介绍了Pandas的基础及高级功能。首先读取并检查数据,包括显示前几行、列名、形状和数据类型。随后进行数据清洗,移除缺失值与重复项。接着转换日期格式,并计算投资收益。最后通过分组计算平均投资回报率,展示了Pandas在数据处理与分析中的强大能力。
50 0