python
文章平均质量分 83
程序员浩轩
这个作者很懒,什么都没留下…
展开
-
Python 判断文件/目录是否存在
Python 操作文件时,我们一般要先判断指定的文件或目录是否存在,不然容易产生异常。例如我们可以使用 os 模块的 os.path.exists() 方法来检测文件是否存在:import os.pathos.path.isfile(fname)如果你要确定他是文件还是目录,从 Python 3.4 开始可以使用 pathlib 模块提供的面向对象的方法 (Python 2.7 为 pa...原创 2019-11-27 15:16:30 · 1172 阅读 · 0 评论 -
Python 复数属性和方法操作实例
复数是由一个实数和一个虚数组合构成,表示为:x+yj一个复数时一对有序浮点数 (x,y),其中 x 是实数部分,y 是虚数部分。Python 语言中有关复数的概念:1、虚数不能单独存在,它们总是和一个值为 0.0 的实数部分一起构成一个复数2、复数由实数部分和虚数部分构成3、表示虚数的语法:real+imagej4、实数部分和虚数部分都是浮点数5、虚数部分必须有后缀j或J#codi...原创 2019-11-27 15:12:54 · 1099 阅读 · 1 评论 -
Python 字符串的索引
字符串是字符的有序集合,可以通过其位置来获得具体的元素。在 python 中,字符串中的字符是通过索引来提取的,索引从 0 开始。python 可以取负值,表示从末尾提取,最后一个为 -1,倒数第二个为 -2,即程序认为可以从结束处反向计数。下面是对 python 索引和切片的总结:索引获取特定偏移的元素字符串中第一个元素的偏移为 0字符串中最后一个元素的偏移为-1str[0] 获取...原创 2019-11-27 15:10:09 · 1540 阅读 · 0 评论 -
Python pip 安装与使用
pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。目前如果你在 python.org 下载最新版本的安装包,则是已经自带了该工具。Python 2.7.9 + 或 Python 3.4+ 以上版本都自带 pip 工具pip 官网:https://pypi.org/project/pip/你可以通过以下命令来判断是否已安装:pip --ve...原创 2019-11-27 15:08:33 · 388 阅读 · 0 评论 -
Python 子类继承父类构造函数说明
如果在子类中需要父类的构造方法就需要显式地调用父类的构造方法,或者不重写父类的构造方法。子类不重写 __init__,实例化子类时,会自动调用父类定义的 __init__。class Father(object): def __init__(self, name): self.name=name print ( "name: %s" %( self.na...原创 2019-11-27 14:52:13 · 303 阅读 · 0 评论 -
Python 文档字符串(DocStrings)
DocStrings 文档字符串是一个重要工具,用于解释文档程序,帮助你的程序文档更加简单易懂。我们可以在函数体的第一行使用一对三个单引号 ‘’’ 或者一对三个双引号 “”" 来定义文档字符串。你可以使用 doc(注意双下划线)调用函数中的文档字符串属性。#!/usr/bin/python# -*- coding: UTF-8 -*- def function(): '...原创 2019-11-27 14:47:30 · 262 阅读 · 0 评论 -
Python 爬虫介绍
一、什么是爬虫爬虫:一段自动抓取互联网信息的程序,从互联网上抓取对于我们有价值的信息。二、Python爬虫架构Python 爬虫架构主要由五个部分组成,分别是调度器、URL管理器、网页下载器、网页解析器、应用程序(爬取的有价值数据)。调度器:相当于一台电脑的CPU,主要负责调度URL管理器、下载器、解析器之间的协调工作。URL管理器:包括待爬取的URL地址和已爬取的URL地址,防止重复抓...原创 2019-11-27 14:44:50 · 396 阅读 · 0 评论 -
Python append() 与深拷贝、浅拷贝
深浅拷贝在 Python 中,对象赋值实际上是对象的引用。当创建一个对象,然后把它赋给另一个变量的时候,Python 并没有拷贝这个对象,而只是拷贝了这个对象的引用,我们称之为浅拷贝。在 Python 中,为了使当进行赋值操作时,两个变量互补影响,可以使用 copy 模块中的 deepcopy 方法,称之为深拷贝。append() 函数当 list 类型的对象进行 append 操作时,实...原创 2019-11-27 14:41:29 · 402 阅读 · 0 评论 -
Python 函数装饰器
装饰器(Decorators)是 Python 的一个重要部分。简单地说:他们是修改其他函数的功能的函数。他们有助于让我们的代码更简短,也更Pythonic(Python范儿)。大多数初学者不知道在哪儿使用它们,所以我将要分享下,哪些区域里装饰器可以让你的代码更简洁。 首先,让我们讨论下如何写你自己的装饰器。这可能是最难掌握的概念之一。我们会每次只讨论一个步骤,这样你能完全理解它。一切皆对象...原创 2019-11-27 14:39:06 · 123 阅读 · 0 评论 -
Python2.x 和 Python3.x 中 raw_input( ) 和 input( ) 区别
1、在 Python2.x 中 raw_input( ) 和 input( ),两个函数都存在,其中区别为:raw_input( ) 将所有输入作为字符串看待,返回字符串类型。input( ) 只能接收"数字"的输入,在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型( int, float )。2、在 Python3.x 中 raw_input( ) 和 input( ) 进行了整...原创 2019-11-27 14:30:29 · 113 阅读 · 0 评论 -
Python 中变量赋值传递时的引用和拷贝
曾经看到这样一个问题,一个字典中的元素是列表,将这个列表元素赋值给一个变量,然后修改这个列表中元素的值,结果发现,字典中那个列表也同样修改了。那个问题如下:dict = {'a':[1,2,3,4,5],'b':2}x = dict['a']for i in range(5): x[i] = 0print(dict['a'])程序运行结果如下: [0, 0, 0, 0, 0]...原创 2019-11-27 14:28:41 · 234 阅读 · 0 评论 -
Pycharm 导入 Python 包、模块
1.点击 File->settings2.选择 Project Interpreter,点击右边绿色的加号添加包3.输入你想添加的包名,点击 Install Package4.可以在 Pycharm 保存项目的目录下查看已经安装的包,路径D:\PycharmProjects\untitled\venv\Lib\site-packages...原创 2019-11-27 14:22:29 · 272 阅读 · 0 评论 -
Python3 subprocess
subprocess 模块允许我们启动一个新进程,并连接到它们的输入/输出/错误管道,从而获取返回值。使用 subprocess 模块subprocess 模块首先推荐使用的是它的 run 方法,更高级的用法可以直接使用 Popen 接口。run 方法语法格式如下:subprocess.run(args, *, stdin=None, input=None, stdout=None, st...原创 2019-11-26 22:13:42 · 392 阅读 · 0 评论 -
Python 函数参数前面一个星号(*)和两个星号(**)的区别
在 Python 的函数中经常能看到输入的参数前面有一个或者两个星号,例如:def foo(param1, *param2):def bar(param1, **param2):这两种用法其实都是用来将任意个数的参数导入到 Python 函数中。单星号(*):*agrs将所有参数以元组(tuple)的形式导入:def foo(param1, *param2): print (...原创 2019-11-26 22:08:13 · 770 阅读 · 0 评论 -
Python 汉诺塔
有三个立柱A、B、C。A柱上穿有大小不等的圆盘N个,较大的圆盘在下,较小的圆盘在上。要求把A柱上的圆盘全部移到C柱上,保持大盘在下、小盘在上的规律(可借助B柱)。每次移动只能把一个柱子最上面的圆盘移到另一个柱子的最上面。请输出移动过程。解答这是动态规划问题中的一种,用递归来实现较为简单方便。对于"将moveSum个圆盘从from柱移动到to柱(借助by柱)"这个问题,我们可以通过以下三步实现...原创 2019-11-26 19:40:38 · 771 阅读 · 0 评论 -
Python 对于负数的存储方式和 c++/c/java 不一样(二进制中 1 的个数)
1、在 python 里面,负数的存储方式a = bin(-3)print(a) a = bin(3)print(a) b = bin(-3 & 0xffffffff)print(b) c = bin(0xfffffffd)print(c) //输出//-0b11//0b11//0b11111111111111111111111111111101//0b1...原创 2019-11-26 19:37:27 · 396 阅读 · 0 评论 -
Python 两个内置函数: locals 和 globals
这两个函数主要提供,基于字典的访问局部和全局变量的方式。在理解这两个函数时,首先来理解一下 Python 中的名字空间概念。Python 使用叫做名字空间的东西来记录变量的轨迹。名字空间只是一个字典,它的键字就是变量名,字典的值就是那些变量的值。实际上,名字空间可以像 Python 的字典一样进行访问。每个函数都有着自已的名字空间,叫做局部名字空间,它记录了函数的变量,包括函数的参数和局部定...原创 2019-11-24 14:09:37 · 166 阅读 · 0 评论 -
解决Python找不到ssl模块问题 No module named _ssl
python安装完毕后,提示找不到ssl模块:www@pythontab.com ~]$ pythonPython 2.7.15 (default, Oct 23 2018, 18:08:43) [GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux2Type "help", "copyright", "credits" or "license" ...原创 2019-11-11 17:08:21 · 2220 阅读 · 0 评论 -
python路线学习图分享,新人请收下
了解新语言产生的背景ABC 是专门为非专业程序员设计的一种教学语言,但是由于其封闭,并未取得成功。1989年的圣诞节期间,吉多·范罗苏姆开发了一个新的脚本解释器,并命名为 Python,作为 ABC 语言的一种继承。新的脚本解释器开放,完美结合了 Unix Shell 和 C 的使用习惯。了解新语言应用的场景·网站后台有大量成熟的框架,如 Django,Flask,Tornado网络爬虫P...原创 2019-11-09 14:03:50 · 239 阅读 · 0 评论 -
python函数返回多个值
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。你下面是小编为您整理的关于python函数返回多个值,希望对你有所帮助。ython函数返回多个值函数可以返回多个值吗?答案是肯定的。比如在游戏中经常需要从一个点移动到另一个点,给出坐标、位移和角度,就可以计算出新的新的坐标:import math def move(x, y, s...原创 2019-11-04 22:14:40 · 2695 阅读 · 0 评论 -
程序员大咖分享:python学习方向
网络编程是Python学习的另一方向,网络编程在生活和开发中无处不在,哪里有通讯就有网络,它可以称为是一切开发的“基石”。下面是小编为您整理的关于python学习方向,希望对你有所帮助。我的python的学习方向对于搜索和个人习惯的不尽如人意,我想是不是可以做个东西,也许是软件也许是硬件,好似个精灵,登陆后会记录你所有的行为,然后判断你的喜好,也许是个比你更懂你的精灵实现这个玩意,pytho...原创 2019-11-04 21:56:04 · 247 阅读 · 0 评论 -
python全栈学习路线
人工智能时代,想要从事编程行业,最佳的学习语言是什么?当然是Python!Python入门简单、功能强大,已成为各大企业首选开发语言,也吸引了无数有志学子投身学习。下面是小编为您整理的关于python全栈学习路线,希望对你有所帮助。何系统的自学Python?幸运的是,Python 是一门初学者友好的编程语言,想要完全掌握它,你不必花上太多的时间和精力。在这里还是要推荐下我自己建的Python...原创 2019-11-04 21:49:43 · 563 阅读 · 0 评论 -
python文件操作-读写删除复制总结
read三种不同的方式f = open('hello.txt') #'hello.txt'指的是文件的名称while True: text = f.readline() #读取文件指针指向的哪一行内容,然后指针下移 if text: print(text) else: #当文读到最后一行,三个空字符串 print(len(t...原创 2019-11-03 22:04:03 · 727 阅读 · 0 评论 -
Python 代码混淆和加密技术
动机Python进行商业开发时, 需要有一定的安全意识, 为了不被轻易的逆向. 混淆和加密就有所必要了.混淆为了增加代码阅读的难度, 源代码的混淆非常必要, 一个在线的Python代码混淆网站. http://pyob.oxyry.com/同时需要注意的是, 这个混淆其实还是被很多人怀疑的, 因为即使混淆了, 也没有改变代码的结构. 这种方法只能”防君子,不防小人“所以, 必要的话, 在...原创 2019-11-03 21:58:22 · 185 阅读 · 1 评论 -
Django中如何防范CSRF跨站点请求伪造攻击
CSRF概念CSRF跨站点请求伪造(Cross—Site Request Forgery)。攻击者盗用了你的身份,以你的名义发送恶意请求,对服务器来说这个请求是完全合法的,但是却完成了攻击者所期望的一个操作,比如以你的名义发送邮件、发消息,盗取你的账号,添加系统管理员,甚至于购买商品、虚拟货币转账等。CSRF攻击原理以及过程用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登录网站A;...原创 2019-11-03 21:56:37 · 178 阅读 · 0 评论 -
PaddlePaddle升级解读|十余行代码完成迁移学习 PaddleHub实战篇
迁移学习 (Transfer Learning) 是属于深度学习的一个子研究领域,该研究领域的目标在于利用数据、任务、或模型之间的相似性,将在旧领域学习过的知识,迁移应用于新领域中。迁移学习吸引了很多研究者投身其中,因为它能够很好的解决深度学习中的以下几个问题: 一些研究领域只有少量标注数据,且数据标注成本较高,不足以训练一个足够鲁棒的神经网络 大规模神经网络的训练依赖于大量的计算资源,这...原创 2019-11-03 21:50:34 · 240 阅读 · 0 评论 -
Python3内置模块之json编码解码方法讲解
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成,在接口数据开发和传输中非常常用。Python3中我们利用内置模块json解码和编码JSON对象。json模块提供了四个功能:dumps、dum...原创 2019-11-02 21:58:48 · 103 阅读 · 0 评论 -
如何在MacOS下安装Python3
对于Python开发者来讲,安装多个版本Python非常常见,原来我写过如何在Linux下安装Python3,今天我们来看下如何在MacOS下安装Python3.mac系统自带python,不过mac系统自带的python版本都是2.x版本(Python2.7或者Python2.6为主)。如果你需要用到Python3,由于Python2和Python3有不兼容,所以需要安装不同版本的Python...原创 2019-10-30 21:32:39 · 4481 阅读 · 0 评论 -
Python中eval与exec的使用及区别
最近开发中用到了eval()与exec()这两个函数,不知道在哪种场景下用哪个函数,所以就翻了下Python的文档。这里就来简单说一下这两个函数的区别eval函数函数的作用:计算指定表达式的值。也就是说它要执行的Python代码只能是单个运算表达式(注意eval不支持任意形式的赋值操作),而不能是复杂的代码逻辑,这一点和lambda表达式比较相似。函数定义:eval(expressi...原创 2019-10-30 21:24:32 · 163 阅读 · 0 评论 -
Python3 pickle模块的使用详解
pickle模块特点1、只能在python中使用,只支持python的基本数据类型。2、可以处理复杂的序列化语法。(例如自定义的类的方法,游戏的存档等)3、序列化的时候,只是序列化了整个序列对象,而不是内存地址。pickle: 用于python特有的类型和python的数据类型间进行转换,pickle提供四个功能:dumps,dump,loads,loadpickle可以存储什么类型的数...原创 2019-10-30 17:22:47 · 182 阅读 · 0 评论 -
PyalgoTrade源码阅读完结篇
前言本文着重于回测相关得模块。由于上一篇文章实在是写得太烂了, 这一篇文章重新开始写。Pyalgotrade业务逻辑及实现原理以官方教程示例为例下载数据python -c "from pyalgotrade.tools import yahoofinance; yahoofinance.download_daily_bars('orcl', 2000, 'orcl-2000.csv')...原创 2019-10-29 17:06:54 · 1962 阅读 · 0 评论 -
用Python徒手撸一个股票回测框架
通过纯Python完成股票回测框架的搭建。什么是回测框架?无论是传统股票交易还是量化交易,无法避免的一个问题是我们需要检验自己的交易策略是否可行,而最简单的方式就是利用历史数据检验交易策略,而回测框架就是提供这样的一个平台让交易策略在历史数据中不断交易,最终生成最终结果,通过查看结果的策略收益,年化收益,最大回测等用以评估交易策略的可行性。代码地址在最后。本项目并不是一个已完善的项目, 还...原创 2019-10-29 16:43:26 · 1837 阅读 · 0 评论 -
如何使用Python搞定数据分析
大数据是当前比较火的方向,依托于这一行业,互联网公司对数据分析人员需求也逐年递增,数据分析师也成为是当前比较火的从业方向。数据是企业数字资产,如何让这些资产转化为实际价值?通过数据分析工具或者数据分析人员对数据进行挖掘,挖掘潜在价值,为指导工作及公司决策层提供数据支撑。数据分析师主要工作是什么?数据分析师主要工作包括:数据收集,清洗,存储,建模,可视化分析,分析决策等;不同生产环节所花费时...原创 2019-10-29 15:22:52 · 170 阅读 · 0 评论 -
Python re模块与正则表达式详解
Python 中使用re模块处理正则表达式,正则表达式主要用来处理文本中的查找,匹配,替换,分割等问题;我们先来看一个问题,切入正则表达式。问题:匹配字符串,最少以3个数字开头。使用Python代码如何实现?检查条件:1>字符串长度判断;2>判断前三个字符是否是数字;这样实现起来有点啰嗦,我们可以使用正则表达式,先来看正则表达式基本语法。1 正则表达式基本语法. ...原创 2019-10-28 22:24:57 · 396 阅读 · 2 评论 -
程序员入门的python不必缺失的教程
可能这对初次接触编程的人有用——我不是不想切入正题,我只是想强调根本没什么正题,我可能在其他文章里提过这一点。“编程语言就是语法糖”,可能你不知道什么是语法糖,但是知道的人也未必认同我。我不保证你们能听懂……python的教程有很多,但是我对很多都不满意,所以这算是我的尝试吧。 我们将实现一个【筛选100以内素数】的程序。我不用python语言,而是用伪代码——伪代码没有固定写法,但是自然不...原创 2019-10-28 17:28:19 · 198 阅读 · 0 评论 -
简单模拟Django中的View类
最近一直用Django开发项目,在项目的视图中使用到了Django的View类和ListView类from django.views.generic import View, ListView在使用过程中,发现Django的View类中有两个方法可以重写,分别是get()和post()。当我们继承View类,并重写上述的两个方法时,View类就能够自动根据request请求中的method...原创 2019-10-28 15:46:55 · 307 阅读 · 0 评论 -
Superivosr出现ERROR (spawn error)错误的3种原因和解决方案
最近在CentOS上部署Django项目,使用了uWSGI,同时使用了Superivosr守护进程。在部署项目和使用过程中,出现过三次ERROR (spawn error)错误,每次都是不同的原因。在网上查找解决方案也总是没有结果,最终还是靠自己分析解决。一、uWSGI开启多进程时Superivosr配置中未添加相应设置导致的错误这种问题往往出现在进行restart操作时。如果WSGI开...原创 2019-10-28 14:56:17 · 21541 阅读 · 0 评论 -
利用python实现mysql数据库向sqlserver的同步
我们经常需要将大量数据保存起来以备后续使用,数据库是一个很好的解决方案。在众多数据库中,MySQL数据库算是入门比较简单、语法比较简单,同时也比较实用的一个。在这篇博客中,将以MySQL数据库为例,介绍一下如何使用Python操作数据库。本科阶段曾学过使用Java对MySQL数据库进行操作,基本思路是先连接数据库,然后执行SQL语句对数据库进行操作,最后打印结果并断开连接。使用Python操作数...原创 2019-10-25 18:10:14 · 1819 阅读 · 3 评论 -
讲解:在Python如何使用SMTP发送邮件
SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。Python创建 SMTP 对象语法import smtplib smtpObj = smtplib.SMTP( [host [,...原创 2019-10-25 17:11:55 · 1645 阅读 · 1 评论 -
浅析常用的Python Web的几大框架,大家请收下
在各种语言平台中,python涌现的web框架恐怕是最多的,是一个百花齐放的世界,各种micro-framework、framework不可胜数;猜想原因应该是在python中构造框架十分简单,使得轮子不断被发明。所以在Python社区总有关于Python框架孰优孰劣的话题。下面就给大家介绍一下python的几大框架:DjangoDjango 应该是最出名的py框架,Google App E...原创 2019-10-25 16:03:57 · 355 阅读 · 0 评论