python学习
EurekaZzz
这个作者很懒,什么都没留下…
展开
-
运行python脚本时传入参数的几种方式(接收外部参数)
运行python脚本时传入参数时三种格式对应不同的参数解析方式,分别为sys.argv、argparse、 tf.app.run, 前两者是python自带的功能,后者是tensorflow提供的便捷方式。1.sys.argvsys模块是很常用的模块, 它封装了与python解释器相关的数据,例如sys.modules里面有已经加载了的所有模块信息,sys.path里面是PYTHONPATH的内容,而sys.argv则封装了传入的参数数据。使用sys.argv接收上面第一个命令中包含的参数方式如原创 2021-01-08 15:59:37 · 37427 阅读 · 2 评论 -
排序(计数、希尔、基数)---python
#线性时间排序:时间复杂度为O(n) 计数排序,桶排序,基数排序#计数排序def count_sort(l,max_num = 100): count = [0 for _ in range(max_num + 1)] for val in l: count[val] += 1 l.clear() for i, v in enumerate(count): #表示i这个数出现v次 for _ in range(v):原创 2021-01-06 21:35:56 · 72 阅读 · 0 评论 -
排序(快速、堆排序、归并排序)---python
#快速排序def quick_sort(l,left,right): if left < right: #待排序的区域至少有两个元素 mid = partition(l,left,right) quick_sort(l,left,mid - 1) quick_sort(l,mid + 1,right) return ldef partition(l,left,right): tmp = l[left] while原创 2021-01-06 18:48:21 · 70 阅读 · 0 评论 -
排序(冒泡、插入、选择)---python
#冒泡排序:def bubble_sort(l): for i in range(len(l)-1):# i表示第n趟或者n-1趟 for j in range(len(l)-i-1):#第i趟 无序区[0,n-i-1] j表示箭头n-i-2 if l[j]>l[j+1]: l[j],l[j+1]=l[j+1],l[j] return l#冒泡排序的优化 最好情况O(n),平均情况O(n*2) ,最坏情原创 2021-01-06 17:51:02 · 88 阅读 · 0 评论 -
汉诺塔问题(python)
def hanoi(n, A, B, C):#将n个圆盘从A经过B移到C if n > 0:#圆盘数大于0 hanoi(n-1, A, C, B)#将n-1个圆盘从A经过C移到B print('{}-{}'.format(A, C))#将A上最底部的圆盘移到C hanoi(n-1,B, A, C)#将n-1个圆盘从B经过A移到Chanoi(3,'A','B','C')#输出结果A-CA-BC-BA-CB-AB-CA-Cd原创 2020-12-30 11:11:52 · 162 阅读 · 0 评论 -
斐波那契数(python)
斐波那契数(python)def f(x): if x ==0 or x == 1: return 1 else: return f(x-1)+f(x-2)@cal_time #装饰器 确定运行时间def fib(n): return f(n)print(fib(30))#给递归函数加装饰器,会出现重复打印#重新定义一个函数,调用,这样就不会重复打印fib running time: 0.2029705047607422 secs.原创 2020-12-29 13:38:13 · 254 阅读 · 0 评论 -
字符编码(ASCII、GB2312、Unicode、UTF-8、UTF-16、编码、解码等)
文章来源https://www.zhihu.com/question/57461614 关于字符编码的概念太多太杂,当例如ASCII、GB2312、Unicode、UTF-8、UTF-16、编码、解码等诸多名词一股脑的堆上来时,确实容易让人迷糊,为了把这些个问题都能讲清楚,我们今天换一种讲法,不讲编程,只讲故事,从时间轴上梳理计算机在不同语言国家不断发展的历史,来彻底搞清楚这些概念。 计算机自己能理解的“语言”是二进制数,最小的信息标识是二进制位,8个二进制位表示一个字节;而我们人类所能理解的语言文原创 2020-12-28 16:48:51 · 339 阅读 · 0 评论 -
python基础(数据读写)
数据读写文件对象声明及基本操作另一种数据格式:文件/文档# 本地文件的界定:指向一个本地存储的文件,是一个链接或者一个映射path1 = 'C:/Users/Hjx/Desktop/text.txt' # 单个反斜杠:/path2 = 'C:\\Users\\Hjx\\Desktop\\text.txt' # 两个斜杠:\\(第一个\是转义符)path3 = r'C:\Users\Hjx\Desktop\text.txt' # r用于防止字符转义# 路径书写格式print(pat原创 2020-12-25 17:13:25 · 145 阅读 · 1 评论 -
python基础(函数、模块与包)
函数自定义函数如何创建函数?def语句 # 定义函数def f(x): if x < 5: print('输入值小于5') else: print('输入值大于等于5') # 定义函数,其中x是参数(局部变量)f(10) # 运行函数输入值大于等于5# 关于retuendef f1(x): y = 2**x # 没有return def f2(x): y = 2**x return y原创 2020-12-25 17:08:32 · 150 阅读 · 0 评论 -
python基础(条件及循环)
条件及循环语句条件判断:if语句Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。 if 判断条件: 执行语句…… else: 执行语句……** 开始有缩进的概念# 基本判断语句age = 12if age < 18: print('18岁以下不宜观看')# if语句后面必须有 : # 自动缩进# if语句写完后,要退回原有缩进继续写# Python代码的缩进规则:具有相同缩进的代码被视为代码块18岁原创 2020-12-25 15:04:50 · 140 阅读 · 0 评论 -
python基础(字典)
字典映射字典dict基本概念字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中键必须是唯一的,但值则不必。# 什么是映射?什么是字典dict?name = ['大头儿子','小头爸爸','隔壁老王']age = [6,35,37]# 首先虽然序列是有顺序的,但还是不能直接把名字和年龄关联起来,这里只是顺序对上,且并没有一对一的关系dic = {'大头儿子':6,原创 2020-12-25 13:56:37 · 161 阅读 · 0 评论 -
python基础(列表)
列表list常用操作序列是Python中最基本的数据结构,它支持字符,数字,字符串甚至可以包含列表(即嵌套)列表用 [ ] 标识,是 python最通用的复合数据类型。列表中值的切片也可以用到变量 [头下标:尾下标] ,就可以截取相应的列表,从左到右索引默认 0开始,从右到左索引默认 -1 开始,下标可以为空表示取到头或尾。加号 + 是列表连接运算符,星号 * 是重复操作# 列表的特征lst1 = [1,2,3,'a','b','c',[1,2,3]]# 可包含任意类型的对象:数值、字符原创 2020-12-24 16:34:37 · 178 阅读 · 0 评论 -
leetcode简单题(python)
简单题-python1.两数之和 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]# 1.def twoSum(self, nums, target): for i原创 2020-12-20 23:30:00 · 597 阅读 · 0 评论 -
python作业
这里写自定义目录标题python简单程序1.九九乘法表2.求1-2+3-4+5 ... 99的所有数的和3.输入一行字符, 分别统计出其中英文字母、空格、数字和其它字符的个数4.python求阶乘之和,1!+2!+3!+...+n!5.python简单程序1.九九乘法表for i in range(0,10): for j in range(0,i+1): print('{}x{}={}\t'.format(i,j,i*j),end='') print()2.求1-原创 2020-10-19 11:53:36 · 3406 阅读 · 0 评论