Python 技巧】的更多相关文章

python技巧 显示对象的所有属性for attr in dir(ad):... print attr+":"+str(getattr(ad,attr))…
Python技巧——list与字符串互相转换   在Python的编程中,经常会涉及到字符串与list之间的转换问题,下面就将两者之间的转换做一个梳理. 1.字符串转换成list 命令:list() 例子: 2.list转换成字符串 命令:"".join(list) 其中,引号中是字符之间的分割符,如“,”,“;”,“\t”等等 例子:…
Python是目前世界上最流行的编程语言之一.因为: 1.它容易学习 2.它用途超广 3.它有非常多的开源支持(大量的模块和库) 不好意思,优达菌又啰嗦了. 本文作者 Peter Gleeson 是一名数据科学家,日常工作几乎离不开python.一路走来,他积累了不少有用的技巧和tips,现在优达菌就将这些技巧分享给大家.这些技巧将根据其首字母按A-Z的顺序进行展示. all or any Python之所以成为这么一门受欢迎的语言一个原因是它的可读性和表达能力非常强.Python也因此经常被调…
Python技巧-list与字符串互相转换 在Python的编程中,经常会涉及到字符串与list之间的转换问题,下面就将两者之间的转换做一个梳理. 1.list转换成字符串 命令:list() 例子: 2.字符串转换成list 命令:"".join(list) 其中,引号中是字符之间的分割符,如",",";","\t"等等 例子:数据分析师培训…
英文 | Python Tips and Trick, You Haven't Already Seen 原作 | Martin Heinz (https://martinheinz.dev) 译者 | 豌豆花下猫 声明 :本文获得原作者授权翻译,转载请保留原文出处,请勿用于商业或非法用途. 有许许多多文章写了 Python 中的许多很酷的特性,例如变量解包.偏函数.枚举可迭代对象,但是关于 Python 还有很多要讨论的话题,因此在本文中,我将尝试展示一些我知道的和在使用的,但很少在其它文章提…
python小技巧: 1.强烈建议使用Python的r前缀,就不用考虑转义的问题了. 2.正则表达式的使用: test = '用户输入的字符串' if re.match(r'正则表达式', test): print('ok') else: print('failed') 3.如果用户输入了一组标签,下次记得用正则表达式来把不规范的输入转化成正确的数组. re.split(r'[\s\,\;]+', 'a,b;; c d') ['a', 'b', 'c', 'd'] 4.凶残的例子: >>>…
1.python的moudles文件中__all__作用 Python的moudle是很重要的一个概念,我看到好多人写的moudle里都有一个__init__.py文件.有的__init__.py中是空白,有的却会有__all__参数.搜索了下总结下__all__参数的作用. 如果其他页面import *的时候如果__init__.py是空白的,可以直接import到moudle的所有函数.而如果__init__.py中定义了__all__,则import *的时候只会导入__all__部分定义…
主题 Python 1000个读者心中有1000个哈姆雷特,要问1000个程序员“什么才是最好的语言”,Java.Python.PHP.C++ 也都有自己的位置.但要问编程语言流行指数之王非,那真的非Python莫属了. 据Stack Overflow数据显示,Python是使用量增长比较快的编程语言. 福布斯新发布的一篇报告指出,python的使用量在去年增长了456%.Netfix.IBM以及其它数以百计的公司都在使用python.包括Dropbox也是由python创建的.Dice的研究表…
我已经使用Python编程有多年了,即使今天我仍然惊奇于这种语言所能让代码表现出的整洁和对DRY编程原则的适用.这些年来的经历让我学到了很多的小技巧和知识,大多数是通过阅读很流行的开源软件,如Django, Flask,Requests中获得的.   很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却不知道如何去学习更加高深的知识.那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程…
(先学第四章) 对象拷贝 任务: Python通常只是使用指向原对象的引用,并不是真正的拷贝. 解决方案: >>> a = [1,2,3] >>> import copy >>> c = copy.copy(a) >>> a.append(4) >>> a [1, 2, 3, 4] >>> c [1, 2, 3] 通过列表推导构建列表 任务: 通过操作和处理一个序列(或者其他可以迭代对象)中元素来创…
学习python有几个月,安装第三方库都是通过 pip install 或者 easy_install.每次都要打开命令行感觉太麻烦.还好Pycharm提供了安装第三方库和安装插件的功能. 首先打开Pycharm,点击左上角  >>File  >>Setting . 打开之后点击 >>PRoject :untitled   >>Project interpreter  . 点击左边的绿色的加号就可以添加新的第三方库了. 你感觉怎么样? 我是觉得比打开命令行方…
1.根据路径导入模块 如果想引用指定路径下的某个模块,则需要使用sys.path.append("module_directory") 来把这个路径添加到sys下,这就涉及到Python语言中import的机制了.如:想引用/home/a/目录下的/b模块,既可以书写如下 import sys; sys.path.append("/home/a/") import b 2. input 和 raw_input的区别 input()函数支持用户输入数字或者表达式,不支…
在python2中执行除法操作如果结果小于1就会返回0 如下面的例子: >>>81/82 0 如果你需要返回"正确的结果 ",有两种方法: 在脚本中引入from future import division >>> from __future__ import division >>> 81/82 0.98780487804878048 将除数或者被除数转换为浮点数 >>> 81.0/82 0.9878048780…
有一个字符串 “aaddfdfdercfghfyttefsfsfewretr123trefg5624sdfcgvfdgte6435234532”,现在需要取出里面出现次数最多的字符 第一种方法-装饰器 class get_max_count_string:    def __init__(self,func):        self.func=func        self.count={}    def __call__(self, args):        for s in args:…
val = [expression for value in collection if condition] 等价于 val = []for value in collection:    if condition:        val.append(expression) 列表推导在python2中存在变量泄漏的问题:    >>> i=1    >>> [i for i in range(10)]    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9…
不同于C语言和SHELL,python中没有switch case语句,关于为什么没有,官方的解释是这样的 使用Python模拟实现的方法: def switch_if(fun, x, y):    if fun == 'add':        return x + y    elif fun == 'sub':        return x - y    elif fun == 'mul':        return x * y    elif fun == 'div':       …
函数在python中作为一等函数,具有以下特点: 1.可以作为参数传递给其他函数 2.作为其他函数的值返回 3.能赋值给变量或数据结构中的元素 4.在运行的时候创建 In [1]: def add(x,y):   ...:     return x+y   ...: In [2]: new_add=add In [3]: new_addOut[3]: <function __main__.add> In [4]: new_add(3,4)Out[4]: 7 In [6]: list(map(n…
python 3.5+ 版本 In [1]: a={'x':2,'y':4} In [2]: b={'c':1,'d':3} In [3]: c={'c':3,'y':6} In [4]:  w={**a,**b} In [5]: wOut[5]: {'c': 1, 'd': 3, 'x': 2, 'y': 4} In [6]: In [6]:  w={**b,**c} In [7]: wOut[7]: {'c': 3, 'd': 3, 'y': 6} python2版本 python2版本 >…
一.日志模块logging模块调用 1.日志模块使用原理 #!/usr/bin/python # -*- coding:utf-8 -*- import logging # 方式一: """ logging.basicConfig(filename='log1.log', format='%(asctime)s - %(name)s - %(levelname)s -%(module)s: %(message)s', datefmt='%Y-%m-%d %H:%M:%S %p…
知乎上有一个问题:Python 有什么奇技淫巧?其中有各种不按套路出牌的招数,也不乏一些惊为天人的"奇技淫巧",会让你大呼:居然还有这种操作??? 本文就是对日常使用过的或者觉得很精妙的"奇技淫巧"的归纳总结. Python版问号表达式 x = 1 y = 2 print ('no','yes')[x==y] no 这里巧妙地利用了Python会把False当做序列下标0.把True当做序列下标1的特性,把否定条件的输出放在前面的元组的第一个元素,而把肯定条件的输出…
Python 用下划线作为变量前缀和后缀指定特殊变量 _xxx 不能用’from module import *’导入 __xxx__ 系统定义名字 __xxx 类中的私有变量名 核心风格:避免用下划线作为变量名的开始. 因 为下划线对解释器有特殊的意义,而且是内建标识符所使用的符号,我们建议程序员避免用下划线作为变量名的开始.一般来讲,变量名_xxx被看作是“私有 的”,在模块或类外不可以使用.当变量是私有的时候,用_xxx 来表示变量是很好的习惯.因为变量名__xxx__对Python 来说…
当下,Python 比以往的任何时候都更加流行,人们每天都在实践着 Python 是多么的强大且易用. 我从事 Python 编程已经有几年时间了,但是最近6个月才是全职的.下面列举的这些事情,是我最开始使用 Python 的时候,就希望清楚的: 字符串操作 列表推导 Lambda 和 Map 函数 在一行里使用 if elif 和 else 条件判断 zip() 函数 字符串操作 ​ Python 非常擅长使用类似数学运算符 + 和 * 来操作字符串 >>> my_string = &…
一行代码定义List 定义某种列表时,写For 循环过于麻烦,幸运的是,Python有一种内置的方法可以在一行代码中解决这个问题. 下面是使用For循环创建列表和用一行代码创建列表的对比. x = [1,2,3,4]out = []for item in x: out.append(item**2)print(out)[1, 4, 9, 16]# vs.x = [1,2,3,4]out = [item**2 for item in x]print(out)[1, 4, 9, 16] Lambda…
我们都知道python从2.x升级到3.x的过程中有一些不兼容的改动,但是有时还我们不得不将2.x的程序升级到3.x. 主要不兼容如下图: 移植过程: 1) 确保存在的代码有足够的测试覆盖.从2.x到3.x的升级工作量并不是很大,但是包含了很多的微小的不兼容,必须通过测试来确保升级后的程序仍然保持原有的功能.完全的测试覆盖不是被建议的,但是确实是需要的. 2) 用python 2.6 的 -3 命令行选项来运行程序,从而发现和去除明显的不兼容问题. 3) 使用2to3转化工具来自动地将程序转化为…
python的namedtuple可以创建一个带字段名的元祖和一个带名字的类 In [1]: from collections import namedtuple ...: ...: nginx=namedtuple('nginx',['active','accepts','handled','requests','reading','writing','waiting']) ...: In [2]: get_nginx=nginx(1,2,3,4,11,111,22) In [3]: get_…
python超强玩法--一行命令搞定局域网共享 ​ 今天刷到python的一个新玩法,利用python自带的http服务,快速创建局域网共享服务,命令如下: python -m thhp.server 9090 9090 是指定的的端口号,默认8080,也可以如上指定 效果如下: 服务端: client端: 速度也是超级快,个人测试达到了60M/s,可以说 相当可以了 操作方法: 在需要分享的目录的cmd窗口下执行上面命令,一件部署,前提是配置有python 的环境变量…
对于数据分析而言,我们通常需要将文件内容读取到列表中来进行后续的操作. np.array(dataFrame)能将dataFrame类型转换成数组类型. 1.pandas下的文本文件读取(推荐)…
若列表中某元素存在则返回之 任务: 你有一个列表L,还有一个索引号i,若i是有效索引时,返回L[i],若不是,则返回默认值v 解决方案: 列表支持双向索引,所以i可以为负数 >>> def list_get(L,i,v=None): if -len(L)<= i < len(L): return L[i] else: return v >>> list_get([1,2,3,4,5,6],3) 4 异常机制 >>> def list2_ge…
slim.arg_scope函数说明如下: Stores the default arguments for the given set of list_ops. For usage, please see examples at top of the file. Args: list_ops_or_scope: List or tuple of operations to set argument scope for or a dictionary containing the current…
In [8]: a={'x':11,'y':22,'c':4} In [9]: import operator In [10]: sorted(a.items(),key=operator.itemgetter(1))Out[10]: [('c', 4), ('x', 11), ('y', 22)] In [11]: a={'x':11,'y':22,'c':4} In [12]: sorted(a.items(),key=lambda x:x[1])Out[12]: [('c', 4), ('…