Python Web开发技巧II

Postman安置Cookie

对于大型项目而已,所携带的cookie往往都不止一个,而是一堆,甚至特别特别长,postman文档提供的cookie操作是全局的,但需要一个一个打(折磨),唯一的优点就是作用域为全局了。

解决:直接放header里(开发者工具CV过来即可)。

 

Django ORM简洁速去单个元素

对于QuerySet的数据类型的数据获取,一般后台两种处理,全丢给前端或者遍历取出。当对于只是单个元素使用的情况,是不是过于麻烦,有时还得校验是否为None,毕竟None的QuerySet遍历时会直接报错(不行可以试一试)。

解决:values_list取出QuerySet值列表后(注意values才带key),直接[0],不需遍历,用长度判断空即可,亲测有效。

简洁而且快速!

phone = user.objects.filter(username=username).values_list("state") 
return 0 if len(phone) == 0 else phone[0]

Python读列表数据写入Excel表

踩遍一堆坑,直接来个简洁和快速的写法:

from openptxl import Workbook
wb = Workbook()
sheet = wb.active  # 激活excel表模式
# 设置首行元素,比如是学号、姓名
sheet.cell(row=1, column=1).value = '学号'
sheet.cell(row=1, column=2).value = '姓名'

index = 2  # 用来标记row
# 如果是一个矩阵遍历数据的话,直接按索引走即可,但实际中,更可能是两个列表这种分裂的形式(解决:用zip)
for i, j in zip(stu_id_list, name_list):
    sheet.cell(row=index, column=1).value = i
    sheet.cell(row=index, column=2).value = j
    index = index + 1

wb.save("D:\\hh.xlsx")  # 存入你想要存入的文件,不存在该文件会自动创建
wb.close()

如果是搞机器学习的同学,更多或从.data文件读出数据,那么:

import pandas as pd  # 读取数据,.data可按行列分开

# 读取.data文件内容,sep是按什么分割,一般就是', '
data = pd.read_csv('hh.data', header=None, sep=', ') 
# 快速读取数据,比如是学号、姓名
stu_id_list = data[:][0]
name_list = data[:][1]

Python简洁快速创建零矩阵

这里以最常用的一维和二维为例,比如我想创建一个20长度的零数组和20*5长的零矩阵。

一维(着急用,优先选择后者,符合逻辑预期)

one_list = [0 for i in range(20)]

# python基础好的同学往往会用↑,但↓运行速度会更快

one_list = [0] * 20

二维(着急用,优先选择后者,符合逻辑预期)

# 可能感觉上会跟一维一样

two_list = [[0] * 5] * 20

# 虽然相比遍历速度快,但有一个致命的缺点,此时对two_list做运算,会按列运算,算出的结果就大不和预期
# 优先选↓

two_list = [[0] * 5 for _ in range(20)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值