0%

XML文件

xml:即可扩展标记语言,xml是互联网数据传输的重要工具,它可以跨越互联网任何的平台,不受编程语言和操作系统的限制,可以说它是一个拥有互联网最高级别通行证的数据携带者。xml是当前处理结构化文档信息中相当给力的技术,xml有助于在服务器之间穿梭结构化数据,这使得开发人员更加得心应手的控制数据的存储和传输。

Xml用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。Xml是标准通用标记语言(SGML)的子集,非常适合Web传输。XML提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。

阅读全文 »

isinstance

描述

isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。

isinstance() 与 type() 区别:

  • type() 不会认为子类是一种父类类型,不考虑继承关系。
  • isinstance() 会认为子类是一种父类类型,考虑继承关系。

如果要判断两个类型是否相同推荐使用 isinstance()。

语法

以下是 isinstance() 方法的语法:

1
isinstance(object, classinfo)
阅读全文 »

YAML介绍

yaml是什么

YAML是专门用来写配置文件的语言,远比JSON格式方便。

YAML语言的设计目标,就是方便人类读写。

YAML是一种比XML和JSON更轻的文件格式,也更简单更强大,它可以通过缩进来表示结构。

YAML 的配置文件后缀为 .yml

阅读全文 »

python卸载

deepin系统会自带两个版本的python,分别为python2和python3,以deepin20.2.3为例,系统自带的python版本为python2.7.6和python3.7.3。有时我么们想把它们卸载然后安装自己喜欢版本,可参考以下方法。

首先,我们要确定不同版本python对应的应用程序名称,按ctrl+alt+T打开终端,输入python,会发现进入了python2.7.6,然后退出输入python3,进入了python3.7.3。

由此,我们开始卸载python:

1
2
3
sudo apt-get remove python
sudo apt-get purge python
sudo apt autoremove
阅读全文 »

在编程中处理文件的读写操作时免不了要和文件路径打交道,甚至有时候为了完成某些场景功能会变的有些繁琐,以前在Python中操作文件路径,我们更多的时候是使用os模块。

而到了Python3时代后,Python3的系统标准库pathlib模块的 Path 对路径的操作会更简单。甚至可以说pathlib已经可以完全替代os.path,它完全采用面向对象的编程方式,因为Python 文档给它的定义是 Object-oriented filesystem paths(面向对象的文件系统路径),其语义适用于不同的操作系统,它继承纯路径但也提供I/O化操作,在处理配置路径方面十分简单。

阅读全文 »

argsparse是python的命令行解析的标准模块,内置于python,不需要安装。这个库可以让我们直接在命令行中就可以向程序中传入参数并让程序运行。

传入一个参数

我们先在桌面新建“arg学习”的文件夹,在该文件夹中新建demo.py文件,来看一个最简单的argsparse库的使用的例子。

1
2
3
4
5
6
7
8
9
10
import argparse

parser = argparse.ArgumentParser(description='命令行中传入一个数字')
#type是要传入的参数的数据类型 help是该参数的提示信息
parser.add_argument('integers', type=str, help='传入的数字')

args = parser.parse_args()

#获得传入的参数
print(args)
阅读全文 »

我们来看一个 flask 视图函数示例:

1
2
3
4
5
6
7
8
from flask import Flask, request

app = Flask(__name__) # 注册一个app

@app.route('/test', methods=['post', 'get']) # '/test'是访问路径, methods指定了请求的方法
def test():
data = request.get_json()['data'] # 通过request获取传来的数据
return data # 对请求返回响应

注意:flask视图函数的返回值类型只能为:string, dict, tuple, Response instance, or WSGI callable。

我们用 requests 来向接口发起请求:

1
2
3
4
import requests

r = requests.post('127.0.0.1:8802/test', data={'data':'hello world'})
print(r.text) # 输出 hello world
阅读全文 »

1、模块说明

requests是使用Apache2 licensed 许可证的HTTP库。

用python编写。

比urllib2模块更简洁。

Request支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动响应内容的编码,支持国际化的URL和POST数据自动编码。

在python内置模块的基础上进行了高度的封装,从而使得python进行网络请求时,变得人性化,使用Requests可以轻而易举的完成浏览器可有的任何操作。

阅读全文 »

任务介绍

我们想要在百度图片下载几个明星的写真图片,首先想到的是爬虫,但是百度使用了js渲染,只有下拉滑动条后面的图片才会加载出来。因此,单纯使用爬虫无法完成任务。这时我们想到了web自动化测试工具selenium,它可以帮助我们下拉滑动条,还可以实现图片的自动搜索。接下来介绍一下selenium+BeautifulSoup+urllib完成这个任务的过程。


阅读全文 »

Pandas简介

1、Python Data Analysis Library 或 Pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。Pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。

2、数据结构:

  • Series: 一维数组,与Numpy中的一维array类似。二者与Python基本的数据结构List也很相近,其区别是:List中的元素可以是不同的数据类型,而Array和Series中则只允许存储相同的数据类型,这样可以更有效的使用内存,提高运算效率。
  • Time- Series: 以时间为索引的Series。
  • DataFrame: 二维的表格型数据结构。很多功能与R中的data.frame类似。可以将DataFrame理解为Series的容器。以下的内容主要以DataFrame为主。
  • Panel : 三维的数组,可以理解为DataFrame的容器。

Pandas 有两种自己独有的基本数据结构。读者应该注意的是,它固然有着两种数据结构,因为它依然是 Python 的一个库,所以,Python 中有的数据类型在这里依然适用,也同样还可以使用类自己定义数据类型。只不过,Pandas 里面又定义了两种数据类型:Series 和 DataFrame,它们让数据操作更简单了。

阅读全文 »