解决del找不到关键词‘province‘的问题和思想

内存:
我认为这个词翻译得不是很准确,产生了歧义。本来是要表示“内部存储器”的意思,现在已经和“内置存储器”的概念混淆了。很多非专业人士搞不清楚内存和外存的区别,更不明白什么虚拟内存。百度词条中一度对内存做了十分错误的解释,更是引起很多困惑。内存是电脑的一个硬件组成部分。从单片机的组成我们可以看到,CPU、内存和输入输出接口,就组成一个完整的电脑,其他统统属于外设。内存是可以被CPU通过总线进行操作的,也就是与CPU之间有总线相连接的。电脑所有的输入输出,都是要从内存来实现的。内存包括只读内存ROM和读写内存RAM,但在个人电脑(PC)中,我们通常所说的内存,是指读写内存。这里尤其应该提醒,内置的外存被很多人理解为“内存”,这是硬件盲非常普遍的误解。外存是外设,比如硬盘就是外存。虽然硬盘的性能很大程度上决定着电脑的应用,但硬盘仍然是可有可无的,其他外存,比如U盘,在很多应用上已经可以代替硬盘。外存数据的读写,统统是要通过内存进行的。CPU操作RAM字节(包括字、双字等等)的各个位,都是来自不同的芯片,所以硬件要有地址译码器。我们也可以清楚地看到,并非每个RAM芯片上都有完整的地址总线、数据总线和控制总线,只有CPU芯片才有足够的那么多引脚。
三次握手:
一个进程可以操作多少内存
普通变量:一个是固化内存变量,列表变量:一个是内存地址引用
所以在import别的文件里的数据的时候,普通变量无法引用会报错,列表变量可以引用
如下图:import iu没有报错,因为iu是列表,xixi是普通变量会报错,xixi下面有红线
代码规范:
1写注释 注释里的英文前后要有空白
2要分块 看清楚是哪个部分 return前后一定会分开
3推荐《代码大全》《你的灯还亮着吗》
在这里插入图片描述
解决province关键字不存在的错误
请求先是200成功然后是500 报错
原因是:代码里用了else 隐式判断,默认找不到city 字段的时候,一定存在province字段,并且删除city或province字段 ,因为删除两次的时候,数据已经被删除了,可以看到第二次请求即删除的时候,在before前原始字段里面就已经没有了city 的字段所以会报错,因为before已经变了,不能删除两次,所以每次第一次请求的时候就会成功,第二次以上的就会失败。
在这里插入图片描述

在这里插入图片描述
修改:把之前的else换成了 if 'province' in c.keys():
在这里插入图片描述
如何证明内存里面的值在多次请求种被改变了
简单比喻来说就是:希望可以证明在一直运行的情况下,(即多次请求下),希望证明内存的值已经被改变了。简单来说就是,A在高速路上骑摩托车,B也在骑,希望可以B在追A,然后在A运行的时候,跳上B的车。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
类似于点击量

from utils.province_city_raw_data import iu


class ProvinceCityInfoView(GenericAPIView):
    """全国省市数据"""

    def get(self, request):
        iu[0] += 1
        return Response(get_data(200, "success", iu), status=status.HTTP_200_OK)

结果是 iu[0]本来是2 每次请求后都会被改变,所以同理说,每次province和city的原始数据里的多余字段都会在已经删除的基础上删除,所以会报错没有province这个关键字的错误。

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值