目录
iterrows()是什么 iterrows()是Pandas库中的一个函数,用于在DataFrame中迭代行。它返回一个迭代器,该迭代器依次返回每一行的索引和对应的Series
简述django的MVT、flask的MVC、vue的MVVM分别什么含义。
excel操作
import matplotlib.font_manager as fm
import matplotlib.pyplot as plt
import pandas as pd
import numpy as e
from PIL import Image, ImageDraw, ImageFont
import csv
from ert import img_ty
#获取数据
ff = pd.read_excel("周五面试结果.xLsx")
for i, j in ff.iterrows():
print(j[0], j[1])
#生成列表套字典的列表
list1 = []
for i, j in ff.iterrows():
list1.append({
'姓名': str(j[0]),
'分数': j[1]
})
#取出分数
lst = []
for i in t:
if type(i[key]) is int:
lst.append(i[key])
#最小值
for i in list1:
if i['分数'] == min(lst):
print(i)
#最大值
for i in list1:
if i['分数'] == max(lst):
print(i)
#平均
a = e.mean(lst)
c = sum(lst) / len(lst)
print(a, c)
#生成csv文件
t = ['姓名', '成绩']
with open('tyu.csv', 'w', encoding='utf-8', newline='') as f:
ui = csv.writer(f)
ui.writerow(t)
for i in range(len(list1)):
op = [list1[i]['姓名'], list1[i]['分数']]
ui.writerow(op)
#前三
t = sorted(lst, reverse=True)
ui = []
for i in list1:
if i['分数'] in t[:3]:
ui.append(i)
print(t[:4])
# 创建空白图像
image = Image.new('RGB', (6000, 4000), (255, 255, 255))
# 创建绘图对象
draw = ImageDraw.Draw(image)
#设置字体
# font_path = 'C:/Windows/Fonts/BASKVILL.TTF/'
font_name = 'C:/Windows/Fonts/simhei.ttf'
font_size = 20
font = ImageFont.truetype(font_name, font_size, encoding='utf-8')
# 绘制文本
draw.text((10, 100), str(ui), fill=(10, 90, 30), font=font)#写入图片
# 保存图像
image.save('output1.png', optimize=True)
#折线图
#设置字体
t = 'C:/Windows/Fonts/BASKVILL.TTF'#Windows默认位置
font_prop = fm.FontProperties(fname=t)
plt.rcParams['font.family'] = 'SimHei'#宋体
df = pd.read_csv('tyu.csv')#读取csv文件
print(df.head())#获取前几条数据
print(df.columns)#获取键
plt.figure(figsize=(19, 10))
plt.plot(df['姓名'], df['成绩'])
plt.savefig('ert.png')
python 的常见异常:
NameError(名字错误):当一个变量名书写错误时,会引发NameError异常.
ValueError(数值错误): 当一个函数接收到一个不合适的参数或参数值时,会引发ValueError异常.
TypeError (类型错误): 当操作或函数应用于不兼容的类型时,会引发TypeError异常。
IndexError (索引错误): 当使用无效的索引访问序列(如列表、字符串等)中的元素时,会引发IndexError异常。
KeyError(键错误): 当使用一个字典中不存在的键访问字典元素时,会引发KeyError异常.
FileNotFoundError (文件未找到错误) : 当尝试打开一个不存在的文件时,会引发FileNotFoundError异常。
IOError (输入/输出错误) : 当发生输入/输出操作失败时,会引发IOError异常。
ZeroDivisionError (除委错误) : 当尝试以委作为除数进行除法运算时,会引发ZeroDivisionError异
python中的上下文:
上下文(Context)通常指的是一段代码的执行环境,也可以称为上下文管理器(Context Manager),用于控制资源的获取和释放。
python 中的上下文用到了__enter__和__exit__这两个特殊的方法:
__enter__ 方法定义了进入上下文的行为,在进入时执行。
__exit__方法定义了退出上下文的行为,在退出时执行。
Python中的魔法方法:
__new__:类的构造器,创建初始化后的基本实例对象。
__init__:类的初始化方法,用来给实例对象添加属性。
__del__:类的析枸器(这是C/C++的叫法),专门用来在实例销毁前调用。
__call__:可以将实例对象直接声明为一个方法调用,方便调用过程,保护内部实现
__getattr__:获取某个属性时
__setattr__:设置某个属性时
__lt__与 __le__:小于判断、小于等于
__eq__与__ne__ :等于、不等于判断时,用的就是这个方法
__gt__与__ge__:大于判断、大于等于判断
iterrows()是什么
iterrows()
是Pandas库中的一个函数,用于在DataFrame中迭代行。它返回一个迭代器,该迭代器依次返回每一行的索引和对应的Series
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 0-1: ordinal not in range(256)这个报错如何解决:
设置字体即可
font_name = 'C:/Windows/Fonts/simhei.ttf'
font_size = 20
font = ImageFont.truetype(font_name, font_size, encoding='utf-8')
Django框架和flask框架有哪些区别?
Flask 是更轻量级的框架,运行速度更快,东西也少 ,Flask 可以被看作是一个微框架,自由度高,而 Django 则包含了更多可扩展的组件(如自带后台管理系统)
简述django的MVT、flask的MVC、vue的MVVM分别什么含义。
Django 的 MVT其中模型处理数据逻辑、视图负责控制和响应请求、模板作为页面的展示。
Flask 的 MVC 在 Flask 中没有控制器层,视图层相当于控制器,并将请求数据传递到模型中进行处理。
Vue 的 MVVM,其中模型代表数据,视图表示用户界面,视图模型充当两者之间的"观察者",自动管理DOM和数据绑定操作。
简述cookie、session、token的区
Cookie 存储在浏览器中,Session 存储在服务器端,Token 可以放在客户端或服务器端。
数据安全方面,Token 更为安全。
有效期限方面,三者都可以设置。
简述SqlAlchemy常用方法及作用,5个以上。
create_all(): 在数据库中创建所有定义的表结构。
select(): 执行 SELECT 查询并返回结果集。
insert(): 插入数据到指定的数据表中。
update(): 更新指定数据表中的数据。
delete(): 从指定数据表中删除数据。
join(): 生成 JOIN 查询语句。