自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

_伍六七_的博客

记录伍六七的成长

  • 博客(48)
  • 收藏
  • 关注

原创 python之旅第十二站(函数下)

第十二章:函数(python version 3.7.2)

2021-09-21 16:37:44 479 1

原创 python安装配置虚拟环境(win10)

之前说过linux中配置python的虚拟环境,这次说一说windows中如何安装配置.`以win10为例,逻辑跟linux中类似.python版本3.7.2.安装配置1.先安装包,通过 win + r 组合键,输入 cmd 打开命令窗口.虚拟环境的包 virtualenv , virtualenvwrapper ,virtualenvwrapper-win.virtualenvwrapper 同样是对 virtualenv 的封装,在linux中只用安装virtualenvwrapper

2021-09-19 23:13:57 1012 3

原创 linux(安装pycharm)

在linux中安装pycharm很简单,解压后直接启动.1.先去官网下载安装包2.解压压缩包到自己指定的目录.第三方软件一般安装到/opt目录3.启动,可以直接运行的.进入到 pycharm 解压后的目录的bin目录下.pycharm.sh 就是启动脚本,直接可以启动,但这样每次都要指定路径启动.sh pycharm.sh启动pycharm将会阻塞一个终端,关闭终端pycharm也将随之关闭.4.创建一下快捷启动命令,指定一个别名.1.进入当前用户主目录 .bashrc

2021-09-16 22:36:56 11746 3

原创 python安装配置虚拟环境(linux)

python的虚拟环境可以方便的在不同python版本和第三方库的版本之间进行切换,各虚拟环境独自管理自己的包,方便不同版本需求的开发.pycharm自带有虚拟环境的功能,创建项目时如果选''新建虚拟环境'',将会默认放到项目路径下.linux安装配置虚拟环境下面介绍手动安装配置虚拟环境:linux中(ubuntu 20.04),linux的源相关配置见我之前的文章.具体步骤安装 virtualenvwrapper,virtualenvwrapper是对virtualenv的封装.pip

2021-09-15 13:20:17 3027 3

原创 linux(安装MySQL)

在linux上安装MySQL有一点需要注意,这里单独拿出来说一下.首先是进行安装这里我准备了两个版本的ubuntu,分别是20.04和18.04.使用命令进行傻瓜式安装MySQL:sudo apt install mysql-server mysql-client.使用apt安装很方便,但默认版本会有所不同.在 ubuntu20.04中目前默认安装的是MySQL 8.0.26.在 ubuntu18.04中目前默认安装的是MySQL 5.7.然后是设置密码在安装完成后,默认是没有设置

2021-09-13 19:23:55 333 1

原创 linux(中文输入法,显示语言)

设置一下界面显示的语言和中文输入法(英语好的完全不用设置界面显示中文).linux版本 ubuntu20.04 64安装输入法之前要先配置国内下载源,不然下载很慢,配置方法请参照我之前的文章.具体步骤点击右上角,选择settings(设置). 选择 "Region&Language(地区和语言)",然后选择"Manage installed Languages(管理已安装的语言)".选择 "Remind Me Later(稍后提醒我)",这里选"Install(安装)"的话就会安

2021-09-12 23:48:21 2566 1

原创 linux(一.安装ubuntu虚拟机)

linux是主流服务端系统.开源,免费,稳定是它众多特点的冰山一角,其余就不多介绍了,感兴趣的话去百度一下就行了.安装ubuntu(20.04)不多废话,直接开装.在windows中要想使用linux:购买云服务器(低配置的很便宜,但非GUI对新手不友好).直接在硬盘的一个分区安装linux(这种方式每次开机只能在windows和linux中二选一).安装VMware,在其中创建linux虚拟机(这种方式可以同时使用windows和linux,但对硬件要求比前两者高).学习阶段推荐VM虚拟机

2021-09-12 00:22:00 321

原创 python之旅第十一站(函数上)

第十一章:函数(python version 3.7.2)函数的概念函数是指一段可以直接被另一段程序或代码引用的程序或代码,也叫做子程序,方法.现阶段可以理解成函数是带名字的代码块.之前用过的input() ,print(), range(), len(), id() 等等都是函数,这些都是 python的内置函数,它们是由有经验的程序员提前定义好的,可以直接调用使用.控制结构的条件之后也是代码块,只不过它们没有单独指定名字,没法直接使用它们.函数的作用python内置函数虽然很丰富但并

2021-09-10 19:15:40 313 1

原创 python配置pip国内源(含linux和windows)

pip是python的包管理工具,很强大.但默认下载源同linux一样都默认是国外,下面对pip下载源进行更改.在linux中修改以ubuntu20.04为例ubuntu20.04自带python3.8,但不带pip,先安装pip.sudo apt install python3-pip查看刚刚安装的版本,验证是否安装成功.pip3 -V在家目录新建一个 .pip目录.mkdir ~/.pip进入 .pip目录 新建一个 pip.conf文件.linux中的配置文

2021-09-09 20:53:19 818

原创 linux(安装QQ)

linux版本:ubuntu20.04直接百度搜索QQ进入官网,找到linux版点进去,官网写的已经很详细了.这里以用户角度操作一遍流程.ctrl + shift + t组合键打开终端uname -a 命令查看系统架构根据架构和包管理器选择安装包,我这里x86 选择安装 x64ubuntu选apt的就行了,后缀名.deb然后综合上面两个条件,选择 x64 deb ,点击下载选择保存文件,不然保存路径会发生改变.接着执行sudo apt install libgtk2.0-0

2021-09-08 19:04:04 1123

原创 linux配置国内源(ubuntu)

ubuntu安装完后,镜像资源地址默认是国外的,通过apt下载个工具之类的操作要么等半天,要么直接下载失败.一般安装完后我们都会把下载源更改为国内的.这里拿ubuntu20.04做演示.(centos的操作区别于ubuntu).国内常用的源:清华源点我进入清华源官网阿里源点我进入阿里源官网查看版本号三种方式,有一种能用就行.cat /etc/issuesudo lsb_release -a(截图上的下划线被盖住了)cat /etc/lsb-release第一种换源方式

2021-09-07 20:58:52 17301

原创 vm虚拟机自动适配窗口大小

vm自动适配窗口大小选项无效时,可以尝试一下这样做:在VMware 的官方文档和社区的支持当中,VMware 都明确的指出了建议使用Open VM Tools.前提是你的Linux 发行版支持 Open VM Tools,可以去vm的官方文档看看.安装步骤安装开源的 open-vm-toolssudo apt-get install open-vm-tools然后再安装sudo apt-get install open-vm*然后reboot重启或者关机重启就好了,此时拖拽窗口就能

2021-09-06 15:10:27 667

原创 数据库(十二.远程登录MySQL)

远程登录1.设置远程服务器主机把想要远程登录的账户的host设置为%,或者自己的固定ip.在远程的mysql数据库下,修改user表即可修改主机为 %update user set host = '%' where user = 'root';修改完记得刷新flush privileges;我这里测试用的是root账户.IP地址等信息我就打码了,只留个SQL语句.2.在本地打开MySQL客户端mysql -h IP地址 -u 用户名 -p 密码 远程登录MySQL如果

2021-09-05 22:47:46 399

原创 数据库(十一.用户管理)

查看用户MySQL的用户默认保存在名为mysql的数据库中,其中user表保存用户的数据.查看当前存在的用户,user表的字段有很多,只查询主机和用户名就行了,密码是md5加密过的就不看了.想看的可以自己加上这个字段.host的值代表登录限制:设置为localhost表示只能从本地登录这个账户要想远程登录这个账户需要将host的值设置为%然后刷新权限flush privileges;user就是用户名了.创建用户create user '用户名'@'主机' identifi

2021-09-04 20:29:48 424

原创 数据库(十.索引)

索引索引是对查询性能优化最常用的手段,简单理解就是根据指定的字段重新组织排序结构,如果查询条件中有用到建立了索引的字段,将会得到性能的提升.原理:通过不断地缩小想要获取数据的范围来筛选出最终想要的结果,同时把随机的事件变成顺序的事件.这里用的是b+树结构,还有FULLTEXT,HASH.如图,每次都能趋近更小的范围.注意事项:不是任何时候创建索引都能提高查询效率的,以查询为主,修改表的操作很少时使用索引性价比才高.每次新建索引都要重新构建一次索引,如果数据量大的话构建索引也要一定的开

2021-09-03 18:30:04 318

原创 数据库(九.SQL注入问题)

SQL注入什么是SQL注入?SQL注入是一种代码注入技术,一般被应用于攻击web应用程序.它通过在web应用接口传入一些特殊参数字符,来欺骗应用服务器,执行恶意的SQL命令,以达到非法获取系统信息的目的.它目前是黑客对数据库进行攻击的最常用手段之一.准备一张表正常查询拼接不符合正常需求的恶意SQL防止SQL注入出现这种情况主要是:对数据库来说,它并不知道当前SQL操作合不合法,只要没有语法错误就去执行.简单的字符串替换,字符串是什么,就会解析成什么,存在SQL注入风险.

2021-09-02 23:17:50 239

原创 数据库(八.python连接MySQL)

MySQL对数据库和表的基本操作说的差不多了,现在用python来操作MySQL.python连接MySQL1.导入模块import pymysql没有这个包的话先用 pip安装一下pip install pymysql2.建立连接对象conn = pymysql.connect(host="localhost", port=3306, user="root", password="123456", database="mydb")参数:host 主机,本机就写localhost就

2021-09-01 22:40:05 238

原创 数据库(七.外键,视图,事务)

外键什么是外键?简单来说一个表的主键出现在另外一个表中,那么对于另外一个表来说,这个字段就是外键.为什么要有外键?保持数据一致性,完整性,起到对表间的数据插入,更新的时候的一种约束.在数据量大的时候外键会影响效率,因此视情况使用.比如:两张表students 和 classes分别存储学生和班级的信息,当在学生表中插入一条新的学生记录时,指定了一个不存在的班级,那这条记录是垃圾数据,在没有外键约束的情况下是能插入成功的,同时在多客户端操作数据库时会引发更多问题. 这时将student

2021-08-31 16:37:09 380

原创 python之旅第十站(程序控制结构下)

第十章:程序控制结构下(python version 3.7.2)一.控制结构的嵌套选择结构嵌套选择结构例如:根据输入年龄判断是否成年,如果成年的话再要求输入会员卡号.选择结构嵌套循环结构例如:根据输入数字判断是否大于0,如果大于0就循环打印.循环结构嵌套选择结构例如:打印100以内的奇偶数.循环结构嵌套循环结构例如:找出100以内的所有质数.质数是只有1和它本身两个因数的自然数,也就是说在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数.二.break关键字bre

2021-08-30 13:29:11 183

原创 python之旅第九站(程序控制结构上)

这站说一说必不可少的程序控制结构一.代码块什么是代码块?代码块,是指被作为一个单元执行的一段Python代码.Python程序就是由大大小小的代码块构造出来的.Python通过缩进来组织代码块,具有相同缩进的代码被自动视为一个代码块,这是Python的强制要求.Python开发者有意让违反了缩进规则的程序不能通过编译,而发出错误提示,以此来强制程序员养成良好的编程习惯.缩进是指调整文本与页面边界之间的距离.一个正确的代码块:x = 100y = 200z = 300违反缩进.

2021-08-29 01:24:19 365

原创 数据库(六.进阶查询下)

order排序排序:order by 排序字段1 排序规则, 字段2 规则2,…可选参数 : asc(升序) , desc(降序) , 默认是 asc按照年龄排序查询结果根据多个条件排序,在第一个条件一样时会再根据第二个条件排序,以此类推.聚合函数官方提供的方便操作的函数.常见聚合函数的有:count(*) 统计数量max(字段) 找出该字段的最大值min(字段) 找出该字段的最小值sum(字段) 对该字段求和avg(字段) 对该字段求平均值round

2021-08-26 20:56:15 206

原创 数据库(五.进阶查询上)

查询的进阶操作结果去重通过命令 select distinct age from students; 可以去除年龄中重复的值.命令格式: select distinct 字段名 from 表名;where之比较运算where是条件查询的关键词,后边跟上条件.> : 大于号, 指定字段值大于指定条件才会被查询到;命令格式: select * from 表名 where 字段名 > 条件值;< : 小于号, 指定字段值小于指定条件才会被查询到;命令格式:

2021-08-26 10:10:24 213

原创 python之旅第八站(运算符)

第八章.python的运算符直奔主题:算术运算符关系运算符逻辑运算符赋值运算符成员运算符身份运算符集合运算符运算符优先级

2021-08-24 22:24:27 276

原创 数据库(四.简单增删改查)

先补充一下数据类型,大差不差的就那几种:数值型:整形: int , tinyint浮点型:float double 表示的精度不同 float 6位有效小数,double 16位,decimal 更多,总长度可有64位字符串:char: 255个字符, 固定大小.varchar: 65535 字节,不固定(可变).text: 64Kb.枚举:enum() 1-2个字节存储数据.enum(“值1”,“值2”,…).时间:date 年月日da

2021-08-23 22:06:20 279

原创 数据库(三.操作数据库)

MySQL的安装我就不说了.直接说一说数据库的创建,删除,表结构的相关操作.一.数据库的基本操作打开自带的命令行客户端,最初还是建议以命令行方式学习.(我这里是8.0,不一定非得同一个版本,其他版本也行,5.7用的也很多).不设置密码的话一般默认是123456,登录进去.(如果设置密码了就用自己设置的).通过命令 select version(); 查看当前MySQL的版本.MySQL中所有命令都以 ; 分号结尾.通过命令 show databases; 查看所有数据库.通过命令

2021-08-22 22:32:22 282

原创 数据库(二.DBMS)

在数据库的第一篇我简单说了一下数据库的概念,数据的存储方式.知道存储方式了,怎么去管理和存取数据呢?不能够是我们使用者直接操作文件吧,这不太现实.那就是需要一个能够操作和管理数据库的工具,也就是马上要说的数据库管理系统.一.数据库管理系统数据库管理系统(Database management system,简称DBMS),是为管理数据库而设计的软件系统,包括三大部分组成:数据库 : 主要是一系列的数据文件,作用是存储数据(就是之前说的数据库,真实存储数据的地方).数据库服务端 : 主要负责.

2021-08-20 15:45:39 920

原创 数据库(一.简介)

一.数据库概念 远古时代的人是怎么记录信息的呢?绳结在墙壁上刻下划痕经历很长时间的发展,出现了纸,有了书籍比起以前是高效了很多,但还是有着很多缺点::不易保存备份困难查找不便现在科技信息发展迅速,数据量越来越大,而人们对数据查找速度的要求却越来越高.新时代产生的数据存储方式就是文件存储.计算机的查询速度是远超人类的,并且能够持久保存各式各样的数据信息.而我要说的数据库则是一些特殊格式的文件的集合,优势更是很多:持久存储存取效率高支持可扩展二.数据库分类1.关系

2021-08-19 18:58:19 172

原创 python实现归并排序(merge)

归并排序算法思想:归并排序就是将待排序列不断一分为二,直到分为单个元素作为一个序列,然后向上合并,合并的过程中交换位置,最终合并完成时已经是有序状态了.归并排序分为两个过程:分裂和归并分裂的过程:借鉴二分查找中的分析结果,时间复杂度为O(logn)归并的过程:相对于分裂的每个部分,其所有数据项都会被比较和放置一次,所以是线性复杂度,其时间复杂度是O(n)综合考虑:每次分裂的部分都进行一次O(n)的数据项归并,总的时间复杂度是O(nlog n)归并排序需要额外消耗一倍的存储空间.实现py

2021-08-18 22:39:10 749

原创 python实现希尔排序(shell)

希尔排序算法思想:希尔排序(Shell Sort)是插入排序的一种.也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本.希尔排序是非稳定排序算法,希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止.希尔排序时间复杂度是 O(n^(1.3-2)),空间复杂度为常数阶 O(1).希尔排序没有时间复杂度为 O(n(logn)) 的快速排序算法快 ,因此对中等大小规模表现良好.但对规模

2021-08-16 22:25:46 316

原创 python实现插入排序

插入排序算法思想:插入排序(Insertion Sort)基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的,个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2).是稳定的排序方法.一般以待排序列第一个元素作为一个有序的序列,从第二个元素开始到最后,依次往有序序列插入,同时能够使有序序列依然保持有序,最终待排序列变为有序.实现python版本 3.7.2# 由于移动操作仅包含1次赋值,是交换操作的1/3,所以插入排序性能会比较好一些def ins

2021-08-14 18:38:30 386

原创 python实现选择排序

选择排序算法思想:它的原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的一端,直到全部待排序的数据元素排完.选择排序是不稳定的排序方法(如果待排数据已经有序,复杂度仍不会减少)选择排序(Selection sort)是对冒泡排序的改进版,优化不是很大: 冒泡排序每比较一次交换一次位置,而选择排序是记录下最大值(或最小值)的下标,在一轮比较结束后只交换一次,因此少了很多交换次数.实现python版本 3.7.2# 选择排序 对冒泡排序的改进版,优化不是很大de

2021-08-11 23:45:12 229

原创 python实现冒泡排序

冒泡排序算法思想:冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法.它重复地走访要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成.这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端.这是一个最简单基础的排序方法,通常它的时间效率比较差(O(n^2)),但是它不需要额外的存储空间.实现python版本 3.7.2def bubbleSort(alist)

2021-08-07 23:02:41 282

原创 python避坑系列之“pycharm 导包报红但能正常运行“

pycharm的一个小问题问题描述(pycharm 专业版 2020.3)导包报红,但能正常运行.解决方法File -> Setting -> Build,Execution,Deployment ->Console->Python Console.把报红模块所在目录的父目录设置为 Source Root.之后就可以了如有错误还望指出...

2021-08-06 23:21:04 9508 9

原创 python避坑系列之“linux中通过命令启动pycharm提示Keymap xxx not found“

pycharm的一个小问题问题描述(pycharm 社区版 2021.2)启动pycharm后一直有这个警告,虽然不影响使用但很烦…原因keymap 就理解成快捷键,因为没有安装 visual Studio ,Eclipse, NetBeans 的快捷键而一直警告,安装一下就好了.应该只有通过命令打开pycharm才会有警告,其他时候也看不到.解决方法File -> Setting跳转到商店安装这几个提示找不到的如有错误还望指出允许转载但请注

2021-07-31 17:15:41 742

原创 python之旅第七站(安装pycharm)

第七章:安装pycharm预先善其事,必先利器其.今天上道甜点,来安装一下时下很主流的高效率的python开发工具——pycharm一.简单介绍一下pycharm:pycharm是一个叫JetBrains的公司开发的,这家公司开发了很多很好用的编辑器,如IntelliJ IDEA -功能强大,符合人体工程学的 JVM IDE,WebStorm - 最智能的 JavaScript IDE等等.pycharm有很多提高python开发效率的工具,比如调试、语法高亮、项目管理、代码跳转、智能提示、自动

2021-07-30 14:52:28 174

原创 python之旅第六站(python的内置数据结构:列表,元组,集合,字典)

第六章:python的内置数据结构一.什么是内置数据结构?数据结构是一个很大的概念,这里简单描述为 计算机组织和存储数据的方式.更通俗易懂的来理解,可以把数据比作居民,对于不同小区,不同户型就是不同的结构,房子作为组织数据的结构,居民为数据.例如:一室一厅住一个人,两室一厅住两个人就好比两种数据结构,一种是存放一个数据,另一种是存放两个数据.居民和房子看做一个整体组成一种数据结构,住在树上的原始人,山顶洞人也各为一种数据结构.那么内置数据结构就是官方已经准备好的数据结构,可以直接拿来用的.各种

2021-07-28 13:03:01 379

原创 python之旅第五站(操作字符串)

第五章:python操作字符串        这几天一直在思考以什么顺序来呈现python,想把相关的知识一次写完,可又不想文章太长而变的复杂,让人不耐烦,不想往下读(首先排除懒得写太长).索性就拆开来说吧,主线穿插支线,以实用,经常用的点为主. 一般流程(基础阶段): 数据类型=>内置结构=>运算符=>控制结构=>函数=>对象=>io=>异常=>等等. &nbs

2021-07-26 01:30:48 493 2

原创 python之旅第四站(python的变量)

第四章:python的变量一.什么是变量?变量变量,那就是可以变的量咯,这么说会不会被骂死(-_- !!!).我们使用的数据都是要存到内存中的,当海量的数据存放到内存中时,如何知道谁是谁? 哎嗨!这就用到变量了.给我们要用的数据起一个名字,当需要用到它的时候直接根据名字去找就可以找到了.给数据起名字的过程叫做赋值(Assignment).Python 使用等号=作为赋值运算符,具体格式为: 名字 = 值 很多编程语言中都是用等号"="进行赋值(存在特例).其他编程语

2021-07-23 21:29:38 190 4

原创 python实现链表(单链表)

python对链表的实现什么是链表?链表就是若干个节点连接起来组成的一条链子.每个节点存储着自己的数据的同时还记录着下一个节点的位置.它可以是有序(各节点的数据是按照指定标准排序的)的,也可以是无序(各节点在链表中的顺序是插入时的顺序,没有刻意进行排序)的由于不必须按顺序存储,链表在插入的时候可以达到O(1)的复杂度,比另一种线性表顺序表快得多,但是查找一个节点或者访问特定编号的节点则需要O(n)的时间(因为只有通过前一个节点才能访问到当前节点).一般链表具有插入节点,删除节点,

2021-07-20 22:45:38 2542 2

原创 python之旅第三站(python的基本数据类型)

第三章:python数据类型简介一.什么是数据类型?对于有编程经验的,或者之前了解过相关概念的人来说很好理解.但如果是初来乍到的小可爱听到这个问题就一头雾水了;专业的解释用词太过于专业,需要有一定门槛才能理解,这里简单概括为:为了更好的管理拥有相同特征的数据或是某一类数据以及充分利用内存空间,就对数据进行类型的划分.其他语言也有对应类型的划分,相比于python更为复杂(有兴趣可以自行查阅资料),python对基本数据的划分大致分为4大类类型概念示例数字类型就是数字,从幼

2021-07-19 20:17:07 197 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除