
Python
文章平均质量分 56
秃秃兔不秃
学了三年还是小白
展开
-
Python3直接pip安装ibm-db,连接DB2时,报错 SQLCODE=-1042,附ibm-db连接db2成功的代码。
直接用pip安装ibm_db成功了,中间出现了SQLCODE=-1042的报错,成功解决,附ibm_db连接db2成功执行的代码。原创 2022-11-21 10:11:34 · 2048 阅读 · 1 评论 -
内网下,Linux系统自带Python2无法连接外网,安装Python3以及pip安装第三方库
公司Linux服务器不能连外网,自带的Python是2.7版本。目的:在不能连外网的情况下,在公司虚拟机中安装Python3,并pip安装第三方包。下载Python:下载地址: https://www.python.org/ftp/python我这里下载的是: https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz(因为我自己电脑里用的版本是3.6.6,所以这里下的也是这个版本。可以在下载地址这里更改。)在可以联网的电脑中执行原创 2021-03-25 17:24:04 · 805 阅读 · 0 评论 -
【矩阵篇】九宫图/n宫图生成——Merzirac法生成奇阶幻方 Python实现
Merzirac法当n为奇数时,我们称幻方为奇阶幻方。Merzirac法生成奇阶幻方:在第一行居中的方格内放1以后按顺序,向右斜上方填写数字。(称为斜步)若出到方阵上方,把该数字填到本该所在列的最下格。若出到方阵右方,把该数字填到本该所在行的最左格。若右上已有数字,或出到方阵右上(即对角线方向), 则把数字填入上一个数字的下一格,即在n的下方放入n+1,(称为跳步),再按上述方法放...原创 2020-03-09 23:39:40 · 1671 阅读 · 1 评论 -
【矩阵篇】矩阵中的0——将矩阵中为0的元素所在行列清零 Python实现
题目描述:在一个M行N列的矩阵中,如果查找到一个元素为“0”,将其所在的行和列的元素都设置为“0”。def zero(matrix): #设置两个数组,一个记录0元素的行号,一个记录0元素的列号。再将该行该列全变为0 row = [True for i in range(0,len(matrix))] col = [True for j in range(0,len(m...原创 2020-03-09 21:56:39 · 2860 阅读 · 0 评论 -
用Python实现最简单的扫雷小游戏——思路+代码
题目描述编写一个拥有三个参数(m, n, p) 的程序:并生成一个m行n列的布尔类型数组,依据概率p填入“地雷”。在扫雷游戏中,已被占有的一格为“地雷”,未被占有的 一格为“安全”格。用星号“*”表示“地雷”,用半角句号“.”表示“安全” 格,打印出此数组。然后,使用邻近(上、下、左、右及对角线)地雷的数量来 替换安全格的句号并打印结果。代码:import randomdef mines...原创 2020-03-09 19:27:34 · 13545 阅读 · 1 评论 -
算法很美 7-1 走楼梯 思路超详解+递归&迭代Python实现
题目描述:有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶、3阶。请实现一个方法,计算小孩有多少种上楼的方式。思路台阶数量upstairs(n)1upstairs(1) = 1一步2upstairs(2) = 2一步+一步两步3upstairs(3) = 3一步+一步+一步一步+两步两步+一步三步由于最大...原创 2020-03-06 11:49:04 · 1152 阅读 · 0 评论 -
求集合的所有子集——思路+Python实现(两种方法)
方法一:每一次遍历,都在前面已有的集合里,再加上一个元素。举个例子,假设有a,b,c三个元素,现在要求他们的子集。如下图所示,每一次遍历,都在前面已有的集合里再加上当前的元素。虽然说看起来挺简单的,用代码实现起来可能会走很多弯路哦。大家可以先试一下再看答案。显然用两个for循环就能完成。代码一:def subsets(nums): result = [[]] for ...原创 2020-02-19 17:18:21 · 7061 阅读 · 1 评论 -
【递归】整数转换(数学表达式)——思路+Python实现
整数转换(数学表达式)题目描述:给定两个整数 a ≤ b, 编写一个程序,通过加1和乘以2的方式,用最少的步骤将a变换成b.例如, 当b=23,a = 5 时,23 = ((5 * 2 + 1) * 2 + 1) 当b=113,a = 11 时,113 = ((((11 + 1) + 1) + 1) * 2 * 2 * 2 + 1)思路:首先a和b的关系分为两种(b大a小,a要变...原创 2020-02-19 15:05:16 · 1005 阅读 · 0 评论 -
斐波那契数列——Python的三种实现方法
首先,斐波那契数列指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*)虽说递归入门的时候都会做斐波那契数列,但是用递归来算斐波那契数列真不是个好办法。这里推荐大家可以直接用for循环做,话不多说直接上代码:#O(n)def fi...原创 2020-02-18 18:03:50 · 2082 阅读 · 0 评论 -
面试题——找到1-n中丢失的数字及其变形题
找到丢失的数字现在你手上有n-1个数字,这些数字的范围是 [1 , n]问题1:如果这n-1个数字中没有重复的数字,你手上的数字丢失了一个。请编写一段高效的找到该缺失数字的代码。问题2:如何这n-1个数字中,有的数字出现了2次,有的数字出现了1次,有的数字没有出现,请编写一段高效的找到该缺失数字的代码。问题1的解:这里提供两种思路:方法一:先求和,然后减去每一个数字。算是效率比较高...原创 2020-02-18 16:43:07 · 1422 阅读 · 0 评论 -
万门——数据结构与算法(Python语言)学习笔记
数据结构与算法(Python语言)第一章时间复杂度时间复杂度的简介:运行时间会随着输入的大小如何变化最好的情况: 运行时间的上限 (最少运行时间)由最简单的输入决定提供了所有输入的最终优化目标最差的情况:运行时间的下限 (最多运行时间)由最复杂的输入决定提供了所有输入的保障时间平均情况: 随机输入的运行时间的期望需要建立随机输入的模型是一种评价算法表现的方...原创 2020-02-15 22:17:04 · 551 阅读 · 2 评论 -
洗牌(两种方式)以及检验正确性——Python
洗牌问题一个好的洗牌:每一张牌出现在每一个位置的概率应该是相等的。方法一:调用random.shuffle(cards) ——不熟悉的random库的欢迎点击这里查看random的用法import randomdef shuffle_system(cards): random.shuffle(cards) 方法二:思路:假设是a-j一共10张牌,位置分别在...原创 2020-02-15 14:07:06 · 806 阅读 · 0 评论 -
汉诺塔——原理讲解+python代码实现
如果比较急的可以点击直接看思路总结或者点击这里看程序代码汉诺塔简介:先来看下什么是汉诺塔当我们只有一个盘子的时候,so easy,直接把盘子从A移到B就可以了。好的我们已经掌握了一个盘子的挪动方法。既然会挪动一个盘子,那n个盘子我们也就会挪动了。当我们在写递归函数时,要有一个坚定的信念——相信这个函数一定可以完成它的任务。 这是我今天会一直强调的一句话。来看一下两个盘子的情况:大...原创 2020-02-14 14:29:50 · 4757 阅读 · 3 评论 -
深度之眼 - Python学习笔记——第八章 文件、异常和模块
第八章 文件、异常和模块实际应用中,我们绝大多数的数据都是通过文件的交互完成的8.1 文件的读写8.1.1 文件的打开文件的打开通用格式with open("文件路径", "打开模式", encoding = "操作文件的字符编码") as f: "对文件进行相应的读写操作"使用with 块的好处:执行完毕后,自动对文件进行close操作。【例1】一个简单的文件读取w...原创 2020-02-10 11:19:36 · 759 阅读 · 0 评论 -
深度之眼 - Python学习笔记——第十章 Python标准库
第十章 Python标准库Python自身提供了比较丰富的生态,拿来即用,可极大的提高开发效率10.1 time库Python处理时间的标准库1、获取现在时间(1)time.localtime() 本地时间——现在在哪里就获得哪里的时间(2)time.gmtime() UTC世界统一时间北京时间比时间统一时间UTC早8个小时import timet_local = ti...原创 2020-02-08 11:11:55 · 522 阅读 · 1 评论 -
详解Python中random库 - random的用法
random库随机数在计算机应用中十分常见Python通过random库提供各种伪随机数基本可以用于除加密解密算法外的大多数工程应用1、随机种子——seed(a=None)(1)相同种子会产生相同的随机数(2)如果不设置随机种子,以系统当前时间为默认值from random import *seed(10)print(random())seed(10)print(rando...原创 2020-02-06 22:18:34 · 32578 阅读 · 3 评论 -
深度之眼-Python学习笔记——第七章 类-面向对象的编程
第七章 类——面向对象的编程引子Why:面向对象更符合人类对客观世界的抽象和理解一切皆对象一只小狗,一把椅子,一张信用卡,一条巧克力。。。一切对象,都有自己内在的属性狗狗的品种、椅子的质地、信用卡的额度、巧克力的口味。。。一切行为,皆是对象的行为狗狗蹲下、椅子移动位置、刷信用卡、巧克力融化了。。。How:类是对象的载体不同年龄、肤色、品质的猫,每一只都是一个对象...原创 2020-02-06 17:54:09 · 500 阅读 · 0 评论 -
Python学习目录 - 持续更新
深度之眼 -《Python基础+数据科学训练营》- 持续更新第二章 Python基本语法元素第三章 基本数据类型第四章 组合数据类型第五章 程序控制结构第六章 函数一共十五章,持续更新ing,预计2020/02/30号前完结...原创 2020-02-06 17:19:03 · 391 阅读 · 2 评论 -
深度之眼 - Python学习笔记——第六章 函数
第六章 函数4.1 函数的定义及调用4.1.1 为什么要用函数1、提高代码复用性——抽象出来,封装为函数2、将复杂的大问题分解成一系列小问题,分而治之——模块化设计的思想3、利于代码的维护和管理顺序式# 5的阶乘n = 5res = 1for i in range(1, n+1): res *= iprint(res)# 20的阶乘n = 20res = 1...原创 2020-02-06 14:55:21 · 760 阅读 · 2 评论 -
深度学习 - Python学习笔记——第五章 程序控制结构
第五章 程序控制结构非顺序式的程序控制,往往需要根据一定的条件,决定程序运行的路线。因此,我们首先来认识一下什么叫条件测试。第一部分 条件测试1、比较运算a = 10b = 8print(a > b) # 大于print(a < b) # 小于print(a >= b) # 大于等于print(a <= b) # 小于等于pr...原创 2020-02-06 14:15:05 · 351 阅读 · 0 评论 -
深度之眼 - Python学习笔记——第四章 组合数据类型
第四章 组合数据类型4.1 列表列表是可变的!4.1.1 列表的表达序列类型:内部元素有位置关系,能通过位置序号访问其中元素列表是一个可以使用多种类型元素,支持元素的增、删、查、改操作的序列类型ls = ["Python", 1989, True, {"version": 3.7}]ls['Python', 1989, True, {'version': 3.7}]...原创 2020-02-05 15:44:21 · 858 阅读 · 0 评论 -
深度之眼 - Python学习笔记——第三章 基本数据类型
第一部分 数字类型1.1 数字类型的组成1.1.1 整数——不同进制的转换默认输入十进制二进制0b、八进制0o、十六进制0x16 == 0b10000 == 0o20 == 0x10True十进制转其他进制a = bin(16) # 十进制转二进制b = oct(16) # 十进制转八进制c = hex(16) # 十进制转十六进制print(a, b...原创 2020-02-05 13:35:13 · 731 阅读 · 0 评论 -
Python集合
集合容器型数据类型:集合、字典、列表、元祖集合要求它里面的元素是不可变的数据类型。但是它本身是可变的数据类型。集合是无序的。集合的作用:列表的去重关系测试:交集、并集…1.集合的创建#集合的创建#方法一:s = set({1,2,"上海",True})print(s,type(s))# 方法二:s2 = {10,"水果","haha"}print...原创 2019-12-15 13:40:03 · 473 阅读 · 0 评论 -
Python深浅copy
深浅copy数据类型的分类可变(不可哈希)的:list dict set不可变(可哈希)的:str bool int tuple浅copy:会在内存中新开辟一个空间,存放这个copy的列表,但是列表里的内容还是沿用之前对象的内存地址。所以尽管l1,l2的id不同,但是内容id是相同的。#浅拷贝l1 = [1,2,3,[4,5,6]]l2 = l1.copy()print(id...原创 2019-12-01 16:46:56 · 377 阅读 · 0 评论 -
Python字典
字典数据类型的分类可变(不可哈希)的:list dict set不可变(可哈希)的:str bool int tuple字典:{}括起来,以键值对形式存储的容器型数据类型:键必须唯一,且是不可变的数据类型:str bool int tuple值可以是任意数据类型,对象查询速度非常快,以空间换时间。1.字典的创建方式#方法一:d1 = dict((('地址','上海')...原创 2019-11-30 14:27:51 · 296 阅读 · 0 评论 -
Python列表
列表1. 列表的创建方法一: l1 = [1,2,"哈哈哈"]方法二:li = list()方法三:列表推导式2. 增appendinsertextendli = ["520","Python",123]li.append("Faye")print(li.append("append方法增加")) #不能打印它,结果是Noneprint(li)li.inser...原创 2019-11-29 17:26:04 · 254 阅读 · 0 评论 -
Python字符串
1. 切片 基本结构: str[start : end : step] step步长默认为1 start或者end不写的话默认为第一个值与最后一个值s = "我爱Python"s1 = s[:]print(s1) #这是切片整个字符串,相当于是copy了s2 = s[2:] #只写了开头没有写结尾,所以是从索引为2的字符开始到最后print(s2)s3 = s[:5] ...原创 2019-11-29 12:57:15 · 790 阅读 · 0 评论