适合纯文科生的 python 100个知识点 第三方库 一
PythonPython 标准库
59 requests库
requests库是Python中一个非常流行的用于发送HTTP请求的第三方库。下面是一个简单的代码示例,展示如何使用requests库发送一个HTTP GET请求并打印响应内容:
import requests
response = requests.get('https://api.github.com')
print(response.text)
上述代码中,首先导入了requests库。然后,使用requests.get()
函数发送了一个HTTP GET请求,并将响应存储在response
变量中。最后,使用response.text
属性打印了响应内容。
以下是一个更完整的示例,展示如何使用requests库发送一个带有请求头和请求体的HTTP POST请求,并将响应内容解析为JSON格式:
import requests
import json
# 定义请求头和请求体
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer <access_token>'
}
data = {
'username': 'example',
'password': 'password'
}
# 发送HTTP POST请求
response = requests.post('https://api.example.com/login', headers=headers, data=json.dumps(data))
# 解析响应内容
if response.status_code == 200:
response_json = json.loads(response.text)
access_token = response_json['access_token']
print(f'Access token: {access_token}')
else:
print(f'Error: {response.status_code}')
上述代码中,首先定义了一个包含请求头和请求体的字典。然后,使用requests.post()
函数发送了一个HTTP POST请求,并将响应存储在response
变量中。接下来,使用json.loads()
函数将响应内容解析为JSON格式,并提取了其中的访问令牌(access token)。最后,将访问令牌打印到控制台。
60 beautifulsoup库
BeautifulSoup是一个解析HTML和XML文档的Python库,可以从网页中提取出需要的数据。以下是一个简单的BeautifulSoup库的代码和案例:
# 导入BeautifulSoup库
from bs4 import BeautifulSoup
# HTML文档
html_doc = """
<!DOCTYPE html>
<html>
<head>
<title>BeautifulSoup Demo</title>
</head>
<body>
<h1>BeautifulSoup Demo</h1>
<p class="paragraph">This is a paragraph.</p>
<ul>
<li>First item</li>
<li>Second item</li>
<li>Third item</li>
</ul>
</body>
</html>
"""
# 创建BeautifulSoup对象
soup = BeautifulSoup(html_doc, 'html.parser')
# 获取标签和属性
print(soup.title) # <title>BeautifulSoup Demo</title>
print(soup.title.string) # BeautifulSoup Demo
print(soup.h1) # <h1>BeautifulSoup Demo</h1>
print(soup.p) # <p class="paragraph">This is a paragraph.</p>
print(soup.p['class']) # ['paragraph']
# 获取文本内容
print(soup.get_text()) # BeautifulSoup Demo This is a paragraph. First item Second item Third item
# 获取标签列表
print(soup.find_all('li')) # [<li>First item</li>, <li>Second item</li>, <li>Third item</li>]
在这个例子中,我们创建了一个HTML文档,并使用BeautifulSoup库对它进行解析。我们使用BeautifulSoup
函数将HTML文档传递给一个BeautifulSoup
对象,然后使用不同的方法和属性来获取标签、属性和文本内容。我们还使用find_all
方法获取所有的li
标签,并将它们打印出来。
61 numpy库
NumPy是一个Python库,用于支持多维数组和矩阵计算,它也是科学计算的基础库之一。下面是一些常见的NumPy库的代码和案例:
61.1 导入NumPy库:
import numpy as np
61.2 创建NumPy数组:
a = np.array([1, 2, 3])
b = np.array([[1, 2, 3], [4, 5, 6]])
c = np.zeros((2, 3)) # 创建一个2x3的零矩阵
d = np.ones((2, 3)) # 创建一个2x3的全1矩阵
e = np.random.random((2, 3)) # 创建一个2x3的随机矩阵
61.3 数组的基本操作:
a.shape # 数组的维度
a.ndim # 数组的维数
a.size # 数组元素的个数
b[0, 1] # 访问数组元素
b[:, 1] # 访问列
b.sum() # 计算数组的总和
b.mean() # 计算数组的平均值
b.std() # 计算数组的标准差
61.4 数组的运算:
a + b # 数组的加法
a - b # 数组的减法
a * b # 数组的乘法
a / b # 数组的除法
a.dot(b) # 数组的点积运算
np.exp(a) # 对数组中的每个元素进行指数运算
np.sqrt(a) # 对数组中的每个元素进行平方根运算
61.5 数组的变形和转置:
a.reshape(2, 2) # 改变数组的形状为2x2
a.T # 数组的转置
61.6 数组的索引和切片:
a[0] # 数组的第一个元素
a[-1] # 数组的最后一个元素
b[1, :] # 第二行
b[:, 1] # 第二列
b[1, 1:3] # 第二行的第二到第三个元素
以上代码仅作为示例,具体使用方法应根据具体情况而定。
62 pandas库
Pandas是Python数据分析的重要库之一,提供了丰富的数据结构和数据操作功能。以下是Pandas库的一些常用代码和案例:
62.1 读取CSV文件并展示前5行数据
import pandas as pd
df = pd.read_csv("data.csv")
print(df.head())
62.2 数据筛选和过滤
# 筛选出某列符合特定条件的行
df.loc[df["列名"] == "条件值"]
# 筛选出符合多个条件的行
df.loc[(df["列名1"] == "条件值1") & (df["列名2"] == "条件值2")]
# 过滤掉某列中特定值的行
df.loc[df["列名"] != "特定值"]
62.3 数据分组和聚合
# 按某列分组并计算均值
df.groupby("列名").mean()
# 按多个列分组并计算均值
df.groupby(["列名1", "列名2"]).mean()
# 对分组后的数据进行聚合操作
df.groupby("列名").agg(["mean", "max", "min"])
62.4 数据透视表
# 生成数据透视表
pd.pivot_table(df, values='值列名', index='行列名', columns='列列名', aggfunc=np.sum)
# 指定多个聚合函数
pd.pivot_table(df, values='值列名', index=['行列名1', '行列名2'], columns='列列名', aggfunc=[np.sum, np.mean])
62.5 数据合并
# 合并两个DataFrame,按照指定的列名进行连接
pd.merge(df1, df2, on='列名')
# 将两个DataFrame按照行进行合并
pd.concat([df1, df2], axis=0)
- 数据可视化
# 绘制柱状图
df.plot(kind='bar', x='列名1', y='列名2')
# 绘制折线图
df.plot(kind='line', x='列名1', y='列名2')
# 绘制散点图
df.plot(kind='scatter', x='列名1', y='列名2')
以上是Pandas库的一些常用代码和案例,当然,Pandas库的功能非常丰富,这里只是列举了一部分常用的功能。
转载自:https://juejin.cn/post/7221884988492988475