python 学习笔记 (四)

【自取】最近整理的,有需要可以领取学习:

一.Flask

1.1 什么是Flask

Flask是由python实现的一个web微框架,可以使用Python语言快速实现一个网站或Web服务。

1.2.构造基本步骤

ste1.创建api对象;

step2.生成resource子类,并定义该类的方法;

step3.绑定路由。

二. ConfigParser

ConfigParser 是用来读取配置文件的包。配置文件可以包含一个或多个节(section,中括号”[ ]”内包含的为section), 每个节可以有多个参数(键=值)。

注意:在python 3 中 ConfigParser模块名已更名为 configparser。

例如,操作读取的配置文件的内容为

[En]

For example, the contents of the configuration file read by the operation are

[db]
db_host = 110.110.110.110
db_port = 69
huaweiqq_uid = 119119119
huaweiqq_pwd = 120120120
host_port = 69

[concurrent]
thread = 10
processor = 2

2.1 ConfigParser 初始化对象

使用ConfigParser 首选需要初始化实例,并读取配置文件:

import configparser
config = configparser.ConfigParser()
config.read("ini配置文件", encoding="utf-8")

2.2 获取所用的section节点

在完成上述初始化后,即可执行该操作。

[En]

After the initialization above, the operation can be performed.

xxxxx = config.sections()

获取ini文件内所有的section,以列表形式返回[‘db’, ‘concurrent’]

2.3 获取指定section 的options

即将配置文件某个section 内key 读取到列表中:

r = config.options("db")

获取指定sections下所有options ,以列表形式返回[‘host’, ‘port’, ‘huaweiqq_uid’, ‘huaweiqq_pwd’]

2.4 获取指点section下指点option的值

r = config.get("db", "db_host")

get(section, option) #获取section中option的值,返回为string类型.

此示例的运行结果为110.110.110.110。

[En]

The running result of this example is 110.110.110.110.

2.5 获取指点section的所用配置信息

r = config.items("db")

items(selections) #获取指定section下所有的键值对.

本例的运行结果为[(‘db_host’, ‘110.110.110.110’), (‘db_port’, ’69’), (‘huaweiqq_uid’, ‘119119119’), (‘huaweiqq_pwd’, ‘120120120), (‘host_port’, ’69’)]

2.6 检查section或option是否存在,bool值

config.has_section("section") #是否存在该section
config.has_option("section", "option")  #是否存在该option

2.7 写入配置文件

添加/修改

add_section(section) 添加一个新的section

set(section, option, value) 对section中的option进行设置,如果不存在该option 则会创建。需要调用write将内容写入配置文件

config.write(open(“ini配置文件”, “w”))

删除

config.remove_section(“????”) #整个section下的所有内容都将删除;需要调用write将内容写入配置文件

config.write(open(“ini”, “w”))

三.调用shell命令常用方法

3.1 使用os.popen()

该方法以文件的形式返回shell指令运行后的结果,然后再通过read()、readline() 或readlines()方法需要获取内容.

3.2 使用commands模块

您可以使用三种方法:

[En]

There are three methods you can use:

(1)commands.getstatusoutput(cmd),其以字符串的形式返回的是输出结果和状态码,即(status,output)。

(2)commands.getoutput(cmd),返回cmd的输出结果。

(3)commands.getstatus(file),返回ls -l file的执行结果字符串,调用了getoutput,不建议使用此方法

3.3 subprocess模块

允许您创建多个子进程。创建时,可以指定子进程和子进程的输入、输出和错误输出管道。执行后,可以得到输出结果和执行状态。

[En]

Allows you to create many child processes. When creating, you can specify the input, output and error output pipes of the child process and the child process. After execution, you can get the output result and execution status.

四.正则表达式匹配IP地址

从 string_ip 字符串变量中,提取处符合IP格式的数据。

string_ip = '????????????????????XXXXXXXXXXXXXXXXXX'#精确提取IP
result = re.findall(r"\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b", string_ip):
if result:
    print result
else:
    print "re cannot find ip

五. mysql-connector 驱动

有时候调试连接mysql的代码,会收到如下错误;

import MySQLdb
ModuleNotFoundError: No module named 'MySQLdb'

如果安装 MySQLdb 感觉麻烦,我们可以使用 mysql-connector 来连接MySQL 数据库, mysql-connector 是 MySQL 官方提供的驱动器。

引入 import mysql .connector 。 mysql .connector 和MySQLdb 很多方法相同,在一些简单的项目中,可能不需要修改代码或者修改很少。

去mysql的官网下载即可:https://dev.mysql.com/downloads/

python 学习笔记 (四)

下载网址 https://dev.mysql.com/downloads/connector/python/

python 学习笔记 (四)

下载到本地,yum localinstall 文件 ,安装即可。

连接到数据的代码如下:

[En]

The code to connect to the data is as follows:

import mysql.connector

cnx = mysql.connector.connect(user='scott', password='password',
                              host='127.0.0.1',
                              database='employees',port =3306)
cnx.close()

6.文件读取

readlines()用法:读取整个文件所有行,保存在一个列表(list)变量中,每行作为一个元素,但读取大文件会比较占内存。
readline()用法:该方法每次读出一行内容,所以,读取时占用内存小,比较适合大文件,该方法返回一个字符串对象。
read() 用法:从文件当前位置起读取size个字节,若无参数size,则表示读取至文件结束为止,它范围为字符串对象。

参考学习

1.欢迎来到 Flask 的世界 — Flask 中文文档 (2.0.1)

https://dormousehole.readthedocs.io/en/latest/

2.Python 之ConfigParser模块

https://www.cnblogs.com/ming5218/p/7965973.html

3.Python调用shell命令常用方法

https://www.cnblogs.com/pengpp/p/9833349.html

4.Python中匹配IP的正则表达式

https://www.cnblogs.com/brogong/p/7929298.html

5.Python 正则表达式匹配IP地址

http://blog.sina.com.cn/s/blog_a1e9c7910102x4qp.html

6.Connecting to MySQL Using Connector/Python

https://dev.mysql.com/doc/connector-python/en/connector-python-example-connecting.html

Original: https://www.cnblogs.com/xuliuzai/p/15257543.html
Author: 东山絮柳仔
Title: python 学习笔记 (四)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/7855/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

发表回复

登录后才能评论
免费咨询
免费咨询
扫码关注
扫码关注
联系站长

站长Johngo!

大数据和算法重度研究者!

持续产出大数据、算法、LeetCode干货,以及业界好资源!

2022012703491714

微信来撩,免费咨询:xiaozhu_tec

分享本页
返回顶部