报错总结
python
- 但本机电脑装多个版本的解释器时,为了避免下载第三方模块的混乱,需要在下载路径中规定好相应的pip工具。


2.面试题,md5是对称加密还是非对称加密
-对称加密:加密的秘钥和解密的秘钥是同一个
-非对称加密:加密使用公钥加密,解密使用私钥解密,使用公钥是不能解密的
-摘要算法:没有解密这一说
- 面试题:utf8和utf8mb4 有什么区别
MySQL在5.5.3之后增加了这个utf8mb4的编码,mb4就是most bytes 4的意思,专门用来兼容四字节的unicode。好在utf8mb4是utf8的超集,除了将编码改为utf8mb4外不需要做其他转换。当然,一般情况下使用utf8也就够了。
小王烩面
2022-11-09 · 超过20用户采纳过TA的回答
关注
utf8和utf8mb4的区别如下:
一、简介
MySQL在5.5.3之后增加了这个utf8mb4的编码,mb4就是most bytes 4的意思,专门用来兼容四字节的unicode。好在utf8mb4是utf8的超集,除了将编码改为utf8mb4外不需要做其他转换。当然,一般情况下使用utf8也就够了。
**问题根源:**
理论上讲, UTF-8 格式使用一至六个字节,最大能编码 31 位字符。最新的 UTF-8 规范只使用一到四个字节,最大能编码21位,正好能够表示所有的 17个 Unicode 平面。关于UTF编码,请阅读《常见编码总结》一文。而utf8 则是 Mysql 早期版本中支持的一种字符集,只支持最长三个字节的 UTF-8字符,也就是 Unicode 中的基本多文本平面。这可能是因为在MySQL发布初期,基本多文种平面之外的字符确实很少用到。而在MySQL5.5.3版本后,要在 Mysql 中保存 4 字节长度的 UTF-8 字符,就可以使用 utf8mb4 字符集了。例如可以用utf8mb4字符编码直接存储emoj表情,而不是存表情的替换字符。
二、内容描述
那上面说了既然utf8能够存下大部分中文汉字,那为什么还要使用utf8mb4呢? 原来utf-8编码可能2个字节、3个字节、4个字节的字符,但是MySQL的utf8编码只支持3字节的数据,而移动端的表情数据是4个字节的字符。也就是说直接往采用utf-8编码的数据库中插入表情数据和很多不常用的汉字,以及任何新增的 Unicode 字符等等数据库都将会报错。
- 面试题:两个大字典如何进行合并?
d1={'name':'kiki','age':18}
d2={'name':'rose','age':24,'gender':'女'}
# 第一种方式--for
# for k,v in d2.items():
# d1[k]=v
# print(d1) # {'name': 'rose', 'age': 24, 'gender': '女'}
# 第二种方式----update---更新原有得数据,添加新的数据
# d1.update(d2)
# print(d1) # {'name': 'rose', 'age': 24, 'gender': '女'}
# 第三方方式----打散再加入
# d=dict(d1,**d2)
# print(d) # {'name': 'rose', 'age': 24, 'gender': '女'}
# 第四种方式----转列表相加---转字典
# d=dict(list(d1.items())+list(d2.items()))
# print(d) # {'name': 'rose', 'age': 24, 'gender': '女'}
# 第五种方式
# d=dict(d1.items() + d2.items())
# print(d)
-
导入导出的问题


- 字符编码补充
# 补充 字符编码重点梳理
1 ascii 英文字母大小写,数字,标点符号
127 够了 1个字节 8个比特位[每个比特位只能放0或1] 2的8次方中变化 256种变化
-ab! 00001001 000010010 000010010
2 中国,表示中文
GBK编码:用两个字节 表示一个字符
2的16次方:65536
3 韩国,表示韩文
998 文
998 한
4 unicode编码 把世界上所有的象形文字都有个数字对应 4个字节表示一个字符
998 文
28893 한
5 unicode编码存储---》硬盘上---》ab文한 4个字节 4个字节 4个字节 4个字节
-utf-8 unicode编码 编码,可变长
a 一个字节
b 一个字节
文 两个字节
한 三个字节
1个字节 1个字节 两个字节 三个字节
0 真正的存储的值
00 真正的值 00 真正的值
000
==》根据提供的零个数给字节去编译,

是字典----》hash来存数据---》存进去的数据是无序的,拿的也不能保证按顺序拿出。
- 什么是解耦合?
将类之间的直接关系变成间接关系。
数据库
- mysql本地连接和用ip连接的区别


django
- 当主动移动项目文件时,数据的路径会报错,如下----数据能取到但是查看不了

原因:当时迁移是用的是之前的路径,移动项目,项目的路径会变动,重新连接即可
解决方案:
把左侧的数据库删除,再重新连接sqlite3 - str object,排除一下meta的地方

问题出现在这里

- 视图类重写get_serializer、get_queryset、perform_destroy
视图类中:
通过重写get_serializer,达到不同方法使用的序列化类不一样
通过重写get_queryset,达到不同方法使用的数据不一样
通过重写perform_destroy,达到控制某些能删,某些不能删除的目的
- 当报错没有属性的时候
- 看看需不需要settings里配置
- 看看继承的父类是否有问题
- 导入导出的问题

上述图片就是我将本应该继承GenericviewSet,继承了GenericAIPView
vue
-
vue2中的data一定要返回
-
注册了store,但是拿不到实例对象

vue实例对象

原因:下载的vuex是最新版,兼容性问题,将vuex版本降低
解决:把node_modules卸载---重新装---下载 -
vue前端页面报错,程序读取不了导致程序启动不了

-
遇到的问题,明明小luffyapi已经加入到环境变量,程序运行没问题,但是表迁移,就报错,找不到模块
# 遇到的问题,明明小luffyapi已经加入到环境变量,程序运行没问题,但是表迁移,就报错,找不到模块
-打印了看一下,确实环境变量有,但是不是个字符串,是个对象
-程序运行,是没问题
-迁移有问题:配置文件中转成字符串,就解决了
- 类似轮播图的接口,先判断是跳外部还是内部拿到link值,跳转页面
# 前端是个app ,后端用djagno写的
# app一打开,广告图片盖住,如果点击可以使用浏览器打开跳转,也可以跳转到自己app内部某个页面----轮播图接口
# 后端:
-广告表:字段:img,title,link,link_type:0/1 # 0是外部,1是内部
-写查询好接口:
-新增接口
# 前端:
-一打开app,就调用接口---》图片盖住---用户点击---》跳转
-外部链接:判断是跳到外部,拿到link的值,直接打开浏览器即可
-内部链接:判断是跳到内部,拿到link的值,根据页面名字,跳转到页面
git
- push不到远端,

如何解决?

redit
- 当redis的url出错了,要去配置文件看看redis的配置路径---"redis_t://127.0.0.1:6379",报错-----改正"redis://127.0.0.1:6379"

- 当导不进包的时候,---考虑环境变量的问题
celery_task下的__init.py 导入import celery


浙公网安备 33010602011771号