王者荣耀这么久了,还没上王者?哈哈哈,看过来,是不是对英雄理解的不够透彻呢,是不是还没有很好的为英雄分类呢,今天就来看看英雄分类技术栈一、EM聚类简介二、爬取网上的英雄初始属性值三、做成饼图EM聚类简介EM英文名是ExpectationMaximization,也叫最大期望算法。在统计计算中,最大期望(EM)算法是在概率(probabilistic)模型中寻找参数最大似然估计或者最大后验估计的算法,其中概率模型依赖于无法观测的隐藏变量(LatentVari
系统 2019-09-27 17:48:30 1915
日志如果你曾经在代码中加入print()语句,在程序运行时输出某些变量的值,你就使用了记日志的方式来调试代码。记日志是一种很好的方式,可以理解程序中发生的事,以及事情发生的顺序。Python的logging模块使得你很容易创建自定义的消息记录。这些日志消息将描述程序执行何时到达日志函数调用,并列出你指定的任何变量当时的值。另一方面,缺失日志信息表明有一部分代码被跳过,从未执行。使用日志模块要启用logging模块,在程序运行时将日志信息显示在屏幕上,请将下
系统 2019-09-27 17:47:25 1915
假设在python中有一字典如下:x={‘a':'1,2,3',‘b':'2,3,4'}需要合并为:x={‘c':'1,2,3,4'}需要做到三件事:1.将字符串转化为数值列表2.合并两个列表并添加新的键值3.去除重复元素第1步通过常用的函数eval()就可以做到了,第2步需要添加一个键值并添加元素,第3步利用set集合的性质可以达到去重的效果,不过最后需要再将set集合转化为list列表。代码如下:x={'a':'1,2,3','b':'2,3,4'}x
系统 2019-09-27 17:45:34 1915
前言ctypes是Python的外部函数库。它提供了C兼容的数据类型,并且允许调用动态链接库/共享库中的函数。它可以将这些库包装起来给Python使用。这个引入C语言的接口可以帮助我们做很多事情,比如需要调用C代码的来提高性能的一些小型问题。通过它你可以接入Windows系统上的kernel32.dll和msvcrt.dll动态链接库,以及Linux系统上的libc.so.6库。当然你也可以使用自己的编译好的共享库我们先来看一个简单的例子我们使用Pytho
系统 2019-09-27 17:38:21 1915
许多人都知道iPython有很好的自动补全能力,但是就未必知道python也同样可以Tab键补全,您可以在启动python后,执行下复制代码代码如下:importreadline,rlcompleter;readline.parse_and_bind("tab:complete")这就可以按Tab键补全了。python自启动如果您嫌每次都要键入这东西麻烦的话,可以把上边这行写到~/.pythonstartup.py,再~/.bashrc里加一个环境变量ex
系统 2019-09-27 17:37:58 1915
匿名函数,顾名思义即没有名称的函数,和def定义的函数的最大区别在于匿名函数创建后返回函数本身(即匿名函数不需要return来返回值),表达式本身结果就是返回值,而def创建后则赋值给一个变量名,在Python中,我们利用关键词lambda创建匿名函数,以下是匿名函数lambda表达式的形式:lambdaarg1,arg2,.....argn:expression以下为一些lambda的特点:lambda是一个表达式,而不是一个语句,即我们可以在任何可以使
系统 2019-09-27 17:57:08 1914
本文实例总结了python格式化字符串的方法,分享给大家供大家参考。具体分析如下:将python字符串格式化方法以例子的形式表述如下:*定义宽度Python代码如下:>>>'%*s'%(5,'some')'some'-左对齐Python代码如下:>>>'%-*s'%(5,'some')'some'最小宽度为6的2位精度的浮点小数,位数不够时前补空格Python代码如下:>>>'%6.2f'%8.123'8.12'字典形式,可在正数前显示加号,位数不够时前面
系统 2019-09-27 17:56:12 1914
前言Python提供给我们多种编码方式。在某种程度上,这相当具有包容性。来自于任何语言的人都可以编写Python。然而,学习写一门语言和以最优的方式写一门语言是两件不同的事情。在这一系列名为PythonShorts的文章中,我将阐述Python提供的一些简单但是非常有用的结构,一些小技巧以及一些我在数据科学工作中遇到的案例。在这篇文章中,我将讨论Python中的for循环,以及如何尽量避免使用它们。写for循环的3种方式:让我用一个简单的例子来解释下。假设
系统 2019-09-27 17:56:07 1914
python操作redis数据库一、安装redis-py:首先要有一台启动的redis服务器,接下来进入本机的虚拟环境,可以使用命令进行安装:使用:pipinstallredis命令进行安装1.1:redis连接:StrictRedis跟Redis的区别在于,StrictRedis用于实现大部分官方命令,并使用官方的语法和命令,Redis是StrictRedis的子类,兼容一些老版本。Redis连接实例是线程安全的,可以直接将redis连接实例设置为一个全
系统 2019-09-27 17:56:04 1914
1、传统的文字表达式:>>>d={'name':'Allen','age':21,'gender':'male'}>>>d{'age':21,'name':'Allen','gender':'male'}如果你可以事先拼出整个字典,这种方式是很方便的。2、动态分配键值:>>>d={}>>>d['name']='Allen'>>>d['age']=21>>>d['gender']='male'>>>d{'age':21,'name':'Allen','gen
系统 2019-09-27 17:55:55 1914
一、pythonnumpy+matplotlib画股票k线图#--coding:utf-8--importrequestsimportnumpyasnpfrommatplotlibimportpyplotaspltfrommatplotlibimportanimationfig=plt.figure(figsize=(8,6),dpi=72,facecolor="white")axes=plt.subplot(111)axes.set_title('Sha
系统 2019-09-27 17:55:36 1914
前言大家都知道Python语言有两个特点,第一是它有Python2和Python3两个版本,第二是它是由很多独立的库堆叠起来了,大部分人学习Python都是从Python2开始的,但是由于Python2从2020年开始很多库就停止维护了,大部分互联网公司Python代码也开始从Python2往Python3迁移了,因此大部分开始同时使用Python2和Python3,Python的IDE比较多,常用的比如pychram,VScode等,本文主要介绍在pyc
系统 2019-09-27 17:52:53 1914
安装模块windows:pipinstallpymysqlubuntu:sudopip3installpymysqlpython操作mysql步骤importpymysql(1)链接mysql数据库db=pymysql.connect(主机名,用户名,密码,数据库名)(2)设置字符编码db.set_charset('utf8')(3)创建游标对象cursor=db.cursor()(4)准备sql语句sql='...'(5)执行sql语句cursor.ex
系统 2019-09-27 17:51:03 1914
importnumpyasnpa=np.array([[0,3],[1,4]])#a.shape是(2,2)#axis=1表示按行相加,并且保持其二维特性print(np.sum(a,axis=1,keepdims=True))#按行相加,不保持其二维特性print(np.sum(a,axis=1))输出为array([[3],[5]]),shape是(2,1)array([3,5]),shape是(1,2)
系统 2019-09-27 17:50:08 1914
本文参考“郭靖愕然——python的多线程与多进程”对多进程/多线程的概念进行理解,结合实际运用情况对python多进程进行整理。一、进程与线程Process&Thread进程是操作系统进行资源分配的最小单元,资源包括CPU、内存、磁盘等IO设备等等,而线程是CPU调度的基本单位。举个简单的例子来帮助理解:我们电脑上同时运行的浏览器和视频播放器是两个不同的进程,进程可能包含多个子任务,这些子任务就是线程,比如视频播放器在播放视频时要同时显示图像、播放声音、
系统 2019-09-27 17:48:29 1914