自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(78)
  • 收藏
  • 关注

原创 粒子群算法

1.简介粒子群优化(Particle Swarm Optimization, PSO)算法是通过模拟鸟群觅食过程中的迁徙和群聚行为而提出的一种基于群体智能的全局随机搜索算法。PSO初始化为一群随机粒子(随机解)。然后通过迭代找到最优解在每一次迭代中,粒子通过跟踪两个"极值"来更新自己。第一个就是粒子本身所找到的最优解,这个解叫做个体极值。另一个极值是整个种群目前找到的最优解,这个极值是全局极值。2.公式迭代公式:vid=w∗vid+c1r1(pid−xid)+c2r2(pgd−xid){v_{i

2020-08-23 00:17:55 1127

原创 Python机器学习入门——3.手动调参及网格搜索

#!/usr/bin/env python# coding: utf-8# In[1]:import numpy as npimport pandas as npfrom sklearn import datasetsiris=datasets.load_iris()# In[2]:X=iris.datay=iris.target# In[3]:#分割训练集和测试集from sklearn.model_selection import train_test_sp

2020-08-06 00:06:02 661

原创 Python机器学习入门——2.数据标准化

#!/usr/bin/env python# coding: utf-8# In[1]:import numpy as npimport matplotlib.pyplot as plt#生成矩阵大小为50*2的0-100的随机整数x=np.random.randint(0,100,(50,2))# In[5]:#转浮点型x=np.array(x,dtype=float)# In[16]:#均值 标准差np.mean(x[:,0]),np.std(x[:,0]

2020-08-06 00:05:30 419

原创 Python机器学习入门——1.获取数据集及其数据集相关操作

#!/usr/bin/env python# coding: utf-8# In[1]:import numpy as npfrom sklearn import datasetsiris=datasets.load_iris()#读取鸢尾花数据集# In[2]:iris# In[6]:iris.keys()#keys()查看数据集内置参数# In[7]:print(iris.DESCR)#打印相关说明# In[8]:type(iris.dat

2020-08-06 00:04:20 930

原创 Python入门学习笔记——22.Python编程阶段项目-ATM

'''使用面向对象编程完成ATM系统1.注册功能:用户名,手机号,身份证号(18位),密码(两次确认,长度6位)2.查询功能:账号必须存在,密码(三次机会,不对就锁卡)3.取款功能:账号必须存在,密码(三次机会,不对就锁卡),取款金额不能大于存款4.存款功能:账号必须存在,存款金额不能低于05.转帐功能:你的账户,转款账户都必须存在,密码(三次机会,不对就锁卡),转账金额不能超过余额6.锁卡功能:账号必须存在,可以使用密码冻结,还可以使用身份证号冻结7.解卡功能:账号必须存在,只能使用身份

2020-06-30 12:53:31 285

原创 Python入门学习笔记——21.装饰器语法与应用

####################################'''# 1.装饰器 decorator> 在不改变原有函数代码,且保持原函数调用方法不变的情况下,给原函数增加新的功能(或者给类增加属性和方法)> 核心思想:用一个函数(或者类)去装饰一个旧函数(或者类),造出一个新函数(或者新类)> 应用场景:引入日志,函数执行时间的统计,执行函数前的准备工作,执行函数后的处理工作,权限校验,缓存等场景中> 语法规则:在原有的函数上加上 @符,装饰器会把下面的函

2020-06-22 23:29:32 174

原创 Python入门学习笔记——20.面向对象-高阶-描述符与设计模式

##################################### 1.描述符'''### 描述符> 当一个类中,包含了三个魔术方法(`__get__,__set__,__delete__`)之一,或者全部时,那么这个类就称为描述符类### 作用> 描述符的作用就是对一个类中的某个成员进行一个详细的管理操作(获取,赋值,删除)> 描述符就是代理了一个类中的成员的操作,描述符属于类,只能定义为类的属性### 使用格式> 把当前的描述符类赋值给一个需要代

2020-06-22 22:59:37 133

原创 Python入门学习笔记——19.面向对象-高阶-内置成员及魔术方法

##################################### 1.内置成员class A(): passclass B(A): passclass C(A): passclass Demo(B,C): ''' 此处是类的说明文档 ''' name = 'a' age = 20 def say(self): print('会说会唱会rap。。。')obj = Demo()obj.san =

2020-06-22 22:58:58 139

原创 Python入门学习笔记——18.面向对象-OOP-三大特性

##################################### 1.封装'''封装就是使用特殊的语法,对成员属性和成员方法进行包装,达到保护和隐藏的目的但是一定注意,不能把成员全部封装死,就失去意义了被封装的成员主要是供类的内部使用被特殊语法封装的成员,会有不同的访问的权限封装的级别 成员 ==> 公有的 _成员 ==> 受保护的 (约定俗成,而python没有具体实现) __成员 ==> 私有的 公有的 p

2020-06-22 22:58:00 353

原创 Python入门学习笔记——17.面向对象-OOP-日志类的封装

##################################### 1.self# 定义人类class Person(): # 成员属性 name = '名字' age = '年龄' sex = '性别' # 成员方法 def sing(self): print('会唱。。。') def dance(self): print('会跳。。。') def rap(self): p

2020-06-22 22:57:28 156

原创 Python入门学习笔记——16.面向对象-OOP-初识面向对象

##################################### 1.面向对象 oop 基本实现'''类名的书写规范,建议使用驼峰命名法 大驼峰:MyCar XiaoMi 小驼峰:myCar xiaoMi一个类有特征和功能两个内容组成: 特征就是一个描述:颜色:白色,品牌:奥迪,排量:2.4 。。。 功能就是一个能力:拉货,带美女兜风。。。。 特征在编程中就是一个变量,在类中称为 属性 功能在编程中就是一个函数,在类中称为 方法类

2020-06-22 22:54:41 133

原创 Python练习题——数组运算

# 给定一个数组 A[0,1,…,n-1],请构建一个数组 B[0,1,…,n-1],其中 B 中的元素 B[i]=A[0]×A[1]×…×A[i-1]×A[i+1]×…×A[n-1]。不能使用除法。## 示例:# 输入: [1,2,3,4,5]# 输出: [120,60,40,30,24]def func(nums): b=[1 for i in range(len(nums))] for i in range(len(nums)): for j in ran.

2020-06-13 10:43:12 493

原创 Python练习题——数组拼接

## 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。## 示例 1:# 输入: [10,2]# 输出: "102"## 示例2:# 输入: [3,30,34,5,9]# 输出: "3033459"# #1# class Solution:# def minNumber(self, nums):# nums_str=[str(i) for i in nums]#数组数字转字符串# for i i

2020-06-13 10:42:36 319

原创 Python练习题——找出第一个只出现过一次的字符

# #每日一题 day 15# 在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。## 示例:# s = "abaccdeff"# 返回 "b"## s = ""# 返回 " "def find_char(s): if len(s)==0: return " " visited=[] for i in range(len(s)): if s[i] not in visited:#s[i]不在遍历过的字符里

2020-06-13 10:41:49 1716 1

原创 Python练习题——字符翻译

## 给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。## 示例 1:# 输入: 12258# 输出: 5# 解释: 12258有5种不同的翻译,分别是"bccfi", "bwfi", "bczi", "mcfi"和"mzi"# [1 2 3 5 5]# 122 5# 12 25# 1225 8# 122

2020-06-13 10:41:14 233

原创 Python练习题——字符串全排列

# 输入一个字符串,打印出该字符串中字符的所有排列。# 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。## 示例:# 输入:s = "abc"# 输出:["abc","acb","bac","bca","cab","cba"]# class Solution:# def permutation(self, s):# if not s: return# s=list(sorted(s))# res=[]#

2020-06-13 10:40:24 515

原创 Python练习题——奇数偶数

# 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。## 示例:# 输入:nums =[1,2,3,4]# 输出:[1,3,2,4]# 注:[3,1,2,4] 也是正确的答案之一。def func(nums): nums_new = [] for i in nums: if i % 2 == 1: nums_new.insert(0, i) else:

2020-06-13 10:39:44 780

原创 Python练习题——剪绳子

# 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m、n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m] 。请问 k[0]*k[1]*...*k[m] 可能的最大乘积是多少?# 例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。# 示例 1:# 输入: 2# 输出: 1# 解释: 2 = 1 + 1, 1 × 1 = 1## 示例 2:# 输入: 10# 输出: 36# 解释: 10 .

2020-06-13 10:39:20 598

原创 Python练习题——位运算两数相加

## 写一个函数,求两个整数之和,要求在函数体内不得使用 “+”、“-”、“*”、“/” 四则运算符号。## 示例:# 输入: a = 1, b = 1# 输出: 2## 提示:# a, b 均可能是负数或 0# 结果不会溢出 32 位整数# class Solution(object):# def getSum(self, a, b):# # 2^32# MASK = 0x100000000# # 整型最大值#

2020-06-13 10:38:39 432

原创 Python入门学习笔记——15.异常处理

#################################################### 1.什么是异常'''什么是异常?异常简单理解,就是非正常,没有达到预期目标。异常是一个事件,并且这个异常事件在我们程序员的运行过程中出现,会影响我们程序正常执行。异常分两种: 1. 语法错误导致的异常 2. 逻辑错误导致的异常在程序无法正常运行处理时,就会出现一个异常,在python中异常是一个对象,表示一个错误。例如:获取一个不存在的索引Traceback

2020-06-12 22:33:31 384 1

原创 Python入门学习笔记——14.模块与包

#################################################### 1.在当前脚本中如果需要使用一些已经定义好的功能时,可以选择对应的模块,导入后使用# 例如使用系统模块 timeimport timeprint(time.time())# 例如使用自定义异常处理 模块import My# 使用模块中定义的类obj = My.MyException()print(obj)# 使用模块中的函数My.func()# 使用模块中定义的变量

2020-06-12 22:32:51 95

原创 Python练习题——内置模块万年历练习

# 万年历import calendar,time,os# 每个月份的日历信息的基础上,可以完成上一月和下一月信息的显示,# 并且可以指定年或月def showdate(year,month): res = calendar.monthrange(year,month) days = res[1] # 当前月份的天数 w = res[0]+1 # 当前月份第一天周几信息 print(f'====={year}年{month}月的日历信息=====') pr

2020-06-08 11:52:13 221

原创 Python入门学习笔记——13.内置模块3

#################################################### 7.压缩模块 zipfileimport zipfile,os# 压缩文件 操作# with zipfile.ZipFile('spam1.zip', 'w') as myzip:# myzip.write('data.json')# myzip.write('data.txt')# myzip.write('data2.txt')# 解压缩文件# wi

2020-06-08 11:51:05 142

原创 Python入门学习笔记——13.内置模块2

#################################################### 4.随机模块 randomimport random# random.random() 返回 0 - 1 之间的随机小数 (左闭右开)res = random.random()# random.randrange([开始值],结束值,[步进值]) 随机获取指定范围内的整数res = random.randrange(5) # 一个参数,从0到整数之间的值,左闭右开res = ra

2020-06-08 11:50:12 100

原创 Python入门学习笔记——13.内置模块1

#################################################### 1.序列化-pickleimport pickle'''什么是序列化?为什么需要序列化?1。序列化是指可以把python中的数据,以文本或二进制的方式进行转换,并且还能反序列化为原来的数据2。一般来说数据在程序与网络中进行传输和存储时,需要以更加方便的形式进行操作,因此需要对数据进行序列化pickle模块提供的函数 dumps() 序列化,返回一个序列化后的二进制数据 可以把

2020-06-08 11:49:23 145

原创 Python入门学习笔记——12.文件操作

###################################################### 1.文件写入# 写入操作'''1。打开文件 open() 参数1:文件路径 路径 url 统一资源定位符 相对路径: 就像给别人指路一样: 在某某大厦的对面。。。 针对文件的相对路径的表示,从当前目录开始计算 1.txt ==> 具体文件前没有任何表示时,默认为当前目录 和 ./1.tx

2020-06-08 11:48:35 159

原创 Python练习题——整数转二进制后1的个数

# 请实现一个函数,输入一个整数,输出该数二进制表示中 1 的个数。例如,把 9 表示成二进制是 1001,有 2 位是 1。因此,如果输入 9,则该函数输出 2。## 示例 1:# 输入:11# 输出:3# 解释:输入的二进制串 00000000000000000000000000001011中,共有三位为 '1'。## 示例 2:# 输入:128# 输出:1# 解释:输入的二进制串 00000000000000000000000010000000中,共有一位为 '1'。## 示.

2020-06-01 12:08:04 2439 1

原创 Python练习题——找出数组中最多的元素

# 数组中有一个数字出现的次数最多,请找出这个数字。# 你可以假设数组是非空的,并且给定的数组总是存在多数元素。# 示例1:# 输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]# 输出: 2import timefrom collections import Counterimport randomn=1000000print(f'数组长度为{n}')start=time.time()#方法一 计时nums=[random.randint(1,10) for i in.

2020-06-01 12:07:10 596

原创 Python练习题——找出只出现一次的数字

# 在一个数组 nums 中除一个数字只出现一次之外,其他数字都出现了三次。请找出那个只出现一次的数字。# 示例 1:# 输入:nums = [3,4,3,3]# 输出:4## 示例 2:# 输入:nums = [9,1,7,9,7,9,7]# 输出:1#1from collections import Counternums = [9,1,7,9,7,9,7]dic=dict(Counter(nums))for k,v in enumerate(dic):#取字典中键和值

2020-06-01 12:06:04 4862 1

原创 Python练习题——找出只出现一次的数

# 一个整型数组 nums 里除两个数字之外,其他数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n)# 示例 1:# 输入:nums = [4,1,4,6]# 输出:[1,6] 或 [6,1]## 示例 2:# 输入:nums = [1,2,10,4,1,4,3,3]# 输出:[2,10] 或 [10,2]#1from collections import Counternums = [1,2,10,4,1,4,3,3]nums_dict=dict(Co.

2020-06-01 12:05:21 1080

原创 Python练习题——找出任意一重复数字

# 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。# 数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。# 请找出数组中任意一个重复的数字。# 示例 1:# 输入:# [2, 3, 1, 0, 2, 5, 3]# 输出:2 或 3from collections import Counterimport randomnums=[2, 3, 1, 0, 2, 5, 3]nums_dict=dict(Counter(nums))#.

2020-06-01 12:03:27 351

原创 Python练习题——打印全部n位整数

'''4.输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。示例 1:输入: n = 1输出: [1,2,3,4,5,6,7,8,9]示例 2:输入: n = 2输出: [1,2,3,4,5,6,...,97,98,99]说明:用返回一个整数列表来代替打印n 为正整数'''#方法一# def func(n):# print([i for i in range(1,10**n)])# n=

2020-05-31 22:05:57 840

原创 Python练习题——字符串左旋操作

'''3.字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。示例 1:输入: s = "abcdefg", k = 2输出:"cdefgab"示例 2:输入: s = "lrloseumgh", k = 6输出:"umghlrlose"限制:1 <= k < s.length <= 10000'''# def r.

2020-05-31 22:04:31 717

原创 Python练习题——字符串内容替换

#2.请实现一个函数,把字符串 s 中的每个空格替换成"%20"。## 示例 1:# 输入:s = "We are happy."# 输出:"We%20are%20happy."#方法1def change(s): s_split=s.split(' ')#按空格将字符串分隔成列表 # print(s_split) s_change='%20'.join(s_split)#用对应字符拼接列表 print(s_change)s="We are happy."

2020-05-31 22:02:08 523

原创 Python练习题——不用乘除及for、while实现多项求和

'''1.求 1+2+...+n ,要求不能使用乘除法、for、while、if、else等关键字及条件判断语句示例1:输入: n = 3输出: 6示例2:输入: n = 9输出: 45限制:1 <= n <= 10000'''#1.def sumNums(n): return sum(range(1, n + 1))print(sumNums(100))#2.li=list(range(1,10))print(sum(li))#3.def

2020-05-31 21:58:55 327

原创 Python入门学习笔记——练习题题目6

# 1.一个整型数组 nums 里除两个数字之外,其他数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n)# 示例 1:# 输入:nums = [4,1,4,6]# 输出:[1,6] 或 [6,1]## 示例 2:# 输入:nums = [1,2,10,4,1,4,3,3]# 输出:[2,10] 或 [10,2]# 2.在一个数组 nums 中除一个数字只出现一次之外,其他数字都出现了三次。请找出那个只出现一次的数字。# 示例 1:# 输入:nums = [.

2020-05-31 21:50:32 126

原创 Python入门学习笔记——练习题题目5

'''1.求 1+2+...+n ,要求不能使用乘除法、for、while、if、else等关键字及条件判断语句示例1:输入: n = 3输出: 6示例2:输入: n = 9输出: 45限制:1 <= n <= 10000'''#2.请实现一个函数,把字符串 s 中的每个空格替换成"%20"。## 示例 1:# 输入:s = "We are happy."# 输出:"We%20are%20happy."'''3.字符串的左旋转操作是把字符串前面的若干个

2020-05-31 21:49:44 148

原创 Python入门学习笔记——11.集合专题

#############################################################1.集合的基本操作和常规函数# 定义集合vars = {123,'abc',False,'love',True,(1,2,3),0,3.1415,'123'}# 1。无序。# 2。布尔类型 True 表示为 1,False 表示为 0,布尔和数字只存在一个# 3。元素的值不能重复# {0, 'abc', 'love', True, 3.1415, (1, 2, 3), 1

2020-05-31 21:08:26 103

原创 Python入门学习笔记——10.字典专题

#############################################################1.字典定义和基本操作# 一,字典定义# 1。 使用{}定义vardict = {'a':1,'b':2,'c':2}# 2。 使用 dict(key=value,key=value) 函数进行定义vardict = dict(name='zhangsan',sex='男',age=22)# 3。 数据类型的转换 dict(二级容器类型) 列表或元组,并且是二级容

2020-05-31 21:07:43 119

原创 Python入门学习笔记——9.元组专题

#############################################################1.元组的基本定义和切片操作# 注意,定义元组时,如果只有一个元素,也需要使用 逗号# vart = (1,)# print(vart,type(vart))# 元组的切片操作 和列表是一样的vart = (1,2,3,4,5,5,4,3,2,1)res = vart[:] # 获取全部res = vart[::] # 获取全部res = vart[1:] #

2020-05-31 21:06:38 91

空空如也

空空如也

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

TA关注的人

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