hongweipeng 发布的文章

字符串在Python内部是如何省内存的


起步

Python3 起,str 就采用了 Unicode 编码(注意这里并不是 utf8 编码,尽管 .py 文件默认编码是 utf8 )。 每个标准 Unicode 字符占用 4 个字节。这对于内存来说,无疑是一种浪费。

Unicode 是表示了一种字符集,而为了传输方便,衍生出里如 utf8 , utf16 等编码方案来节省存储空间。Python内部存储字符串也采用了类似的形式。


Python Web之路Django(七): 好用的 ContentType


Django提供的ContentType实在是太方便了

起步

在一些诸如“收藏”的业务场景下,用户能够收藏不同种类的记录,收藏文章,商品,评论等。如果仅用一张表来存储用户的收藏情况,那么模型中需要两个属性来分别表示类型和主键:

class Collect(models.Model):
    """
    用户收藏表
    """
    owner = models.ForeignKey(User, on_delete=models.CASCADE)
    created = models.DateTimeField(auto_now_add=True)

    target_table = models.CharField(verbose_name='表名')
    object_id = models.IntegerField(verbose_name='目标表中的主键')

本文介绍的也是这种实现形式,但如果用 django 提供的 ContentType 会方便很多。


我的2019年总结


起步

今年对互联网来说并不容易。大半年的时间里,互联网里的大哥们都忙着裁员。人工智能与大数据的热潮过后,互联网行业走着下坡路。很多当初为了热度入场的人成了待就业人员,我的某个好朋友在2017读研时选择了数据挖掘方面,临近毕业时,市场里算法凉凉了。同时又有互联网裁员大潮,找工作太难了。

之前的盲目扩张,造成企业的体量泡沫过多,互联网发展很快,当资本抽离,泡沫随之而破,我觉得互联网是在渐渐回归正轨。