python
文章平均质量分 88
AI让世界更懂你
计算机科学与技术专业博士,主要研究方向为人工智能、自然语言处理、大规模语言模型和对话系统等。曾与微软小冰、微软小娜共同工作。兴趣广泛,包括并不限于人工智能,心理学,认知科学,语言学,数学,天文学等。让我们一起和AI,改进世界!
展开
-
Flask or FastAPI? Python服务端初体验
最近由于工作需要,又去了解了一下简单的python服务搭建的相关工作,主要是为了自己开发的模型或者工具给同组的人使用。之前介绍的针对于数据科学研究比较友好的一个可以展示的前端框架Streamlit可以说是一个利器。不过,随着ChatGPT的流行,基于chat的服务越来越多了起来,streamlit有一个chat衍生物,但是它能提供的只是一个简单的聊天功能,并不能具有更高级显示,例如支持markdown和流式输出等。因此,更加适合大模型前端的可能是更好的选择。原创 2023-05-28 21:48:16 · 2769 阅读 · 0 评论 -
与写代码相关的工具,你知道第几层?
我们一直以为,写代码就是一个很简单的事情,也许就是打开一个文本文件,然后在上面写一些代码就可以了。这种说法对于小白和大佬都是适用的,尤其是借助舌尖上的中国的话语:“高端的食材,往往只需最朴素的烹饪方式”一样。我们曾经开玩笑说,对于大神级写代码的人,可能只需要01两个按钮即可(其实这恰恰是计算机在做的事情,难道程序员的尽头是计算机?但是,作为普通人,我们可能需要一些特定的工具来帮助我们进行代码的编写,按照需求层次,可以分为5层,看看你知道第几层。原创 2023-02-02 10:31:27 · 485 阅读 · 0 评论 -
提交python代码到仓库前,一定要做这3件事
话说,一个程序员成长最快的时候,就是在看别人代码的时候,不仅可以帮别人看出错误,也能够从优秀的代码中获得成长。今天,我要说的是提交python代码到仓库前,一定要做这3件事。他们能够帮助大家规范代码,在提交到github上的时候更加清晰和易维护。原创 2023-01-29 22:34:24 · 485 阅读 · 0 评论 -
[streamlit]数据科学科研工作者的神器,必须要推荐一下
做科研当然要有过硬的专业知识,但是也少不了一些辅助,才能最大程度发挥我们的能力。因此,除去我们模型性能优秀,结果良好以外,如何进行一个好的展示,也是非常有必要的。那么今天,我们就隆重介绍,这个几乎可以替代掉Flask作为构建demo首选的。(这次不是chatGPT了,毕竟chatGPT只会描述,不会感受。)原创 2022-12-20 21:08:21 · 1545 阅读 · 1 评论 -
惊艳于红警开源代码?赏心悦目的代码注释,我们也可以 !
这几天,红警1的开源代码重现江湖,这个20年前,甚至25年前的代码,被我们所有的后来者所惊叹,这才是一个艺术品一般的存在。那么如果我们也想写出如此优美的代码,应该注意的事项有哪些?本文将讲述3个编码时需要注意的部分,并着重讲解如何编写出规范的代码注释并加以利用。原创 2020-06-10 13:55:45 · 33867 阅读 · 52 评论 -
我们为什么要用枚举类?从产品经理的角度,手把手带你走进enum的神奇世界
不使用枚举类的阶段枚举类在初学者看来是一个相当鸡肋的类。首先,在我们进行选择、比较的时候,我们更喜欢直接赋值变量,以int或者string类型的最多,比如当我们定义一个学生类的性别的时候,我们更喜欢使用male 或者female来进行赋值。class student: def __init__(self): self.gender="male" # or female ...或者...原创 2020-03-17 11:54:33 · 1470 阅读 · 0 评论 -
看一次就会的python正则表达式的使用指南
前言正则表达式作为一名合格的程序员的必备的基本技术之一,其有用性不言而喻。但是它为什么会非常难以掌握,甚至想用一用也都感觉难以下手呢?本文将会让你一次就看会如何使用Python正则表达式。1. 正则表达式的组成在介绍如何使用Python的正则表达式时,我们需要先认识一下正则表达式的各种功能,以及其组成形式如何。正则表达式可以从非结构化的文本中提取到我们想要的内容,其本质为模式匹配,也是体现...原创 2020-03-06 22:31:11 · 11437 阅读 · 21 评论 -
python学习之函数
对于函数的了解还是不够透彻,毕竟有很多小细节需要注意。最简单的部分我们不再赘述,主要讲一下需要注意的几点。1.函数参数1.1函数参数主要分为3种:正常参数,默认参数,可变长参数。所谓正常参数,就是我们常规意义上的参数,就和f(x)一样,没什么区别。例如:def power(x, n): s = 1 while n > 0: n = n - 1 s =原创 2017-11-30 14:32:45 · 475 阅读 · 0 评论 -
python学习之初始化实例、类属性、方法
0. 写在前面对于python的面向对象的编程还是稍显薄弱,在接下来的几篇中,我们将着重讲解python的面向对象的特性。因为这点确实和java不一样。1.初始化实例化属性。可接受任意关键字参数,并把他们都作为属性赋值给实例。使用**kw,除了可以直接使用self.name = ‘xxx’设置一个属性外,还可以通过setattr(self, ‘name’, ‘xxx’)设置属性。class Pers转载 2017-08-30 22:16:30 · 16729 阅读 · 0 评论 -
python学习之列表与元组
0. 写在前面今天,我们先来介绍python里的数据的基本组成方式。 在python里面有这些的高级父类,叫做容器,容器包含但不仅限于以下3类:序列、映射与集合。 其中,Python共有6中内建的序列:列表、元组、字符串、Unicode字符串、Buffer、Xrange对象。 下面先简单介绍一下列表和元组: 1)列表,就如同数组一样,不过各个元素可以是不同的,比如:Edward=[‘a’,2原创 2017-03-10 19:13:54 · 629 阅读 · 0 评论 -
pyhton学习之字典
0. 写在前面同样,在开始今天的新课程之前,我们先回顾一下上一章的内容,我们在继学习了列表、元组后,又学习了字符串这个常用的数据结构。对于字符串的输入输出以及格式有了一定的说明,并且对于字符串常用的函数方法也进行了简要的介绍。这样就把容器的第一部分序列学习完成了,接下来,我们学习容器的第二部分字典。1. 字典定义对于字典,也许听起来很奇怪,字典是什么?在其他语言中,他可能更多的叫做映射,或者是散列表原创 2017-03-27 16:43:19 · 594 阅读 · 0 评论 -
python学习之字符串
0. 写在前面在开始新的章节前,我们先回顾一下上一章所讲的内容,首先,我们讲了一个包含了3种最常见的数据结构的东西,它叫序列,包含了可变的列表以及不可变的元组和字符串。它就像是Java等类C语言中的数组,不过是更强大的数组,可以进行各种数组操作的同时还可以使用一些方法。1. 字符串的创建1.1 字符串的定义在Python中,字符串的创建都十分的简单,相比较java等复杂的类型定义,python中对于原创 2017-03-20 10:22:18 · 704 阅读 · 0 评论