浅谈Python中数据解析

Import os; -- Python自带
print(os.getcwd()) -- 获得当前工作目录
os.chdir('/Users/longlong/Documents') -- 转换到/Users/longlong/Documents目录
os.path.join(parm1, parm2,...) -- 从一个或多个路径片段中构造一个路径名。
os.path.expanduser() -- 用来将包含~符号的路径扩展为完整的路径

代码如下:

>>> pathname = '/Users/pilgrim/diveintopython3/examples/humansize.py'
>>> os.path.split(pathname)  --('/Users/pilgrim/diveintopython3/examples', 'humansize.py')罗列目录内容构造绝对路径

代码如下:

>>> import os
>>> print(os.getcwd())
/Users/longlong/Documents
>>> os.chdir("./python/")
>>> os.getcwd()
'/Users/longlong/Documents/python'
>>> print(os.path.realpath('whileloop.py')
      )
/Users/longlong/Documents/python/whileloop.py
>>> print(os.path.realpath("whileloop.py"))
/Users/longlong/Documents/python/whileloop.py
>>>

列表解析

代码如下:

>>> [os.path.realpath(f) for f in glob.glob("*.py")]
['/Users/longlong/Documents/python/indices_over_two_objects.py', '/Users/longlong/Documents/python/loops_over_indices.py', '/Users/longlong/Documents/python/while_loops.py']<br>
>>> [f for f in glob.glob("*.py") if os.stat(f).st_size > 700]
['indices_over_two_objects.py', 'while_loops.py']
1

字典解析

>>> metadat_dict = { f:os.stat(f) for f in glob.glob('*.py')}

>>> type(metadat_dict)
<class 'dict'>

>>> list(metadat_dict.keys())
['indices_over_two_objects.py', 'while_loops.py', 'loops_over_indices.py']

>>> metadat_dict['indices_over_two_objects.py'].st_size
871
>>> list(metadat_dict.keys())
['indices_over_two_objects.py', 'while_loops.py', 'loops_over_indices.py']

>>> a_dict = {'a':1, 'b':2,'c':3}
>>> {value:key for key,value in a_dict.items()}
{1: 'a', 2: 'b', 3: 'c'}

集合解析

>>> a_set = set(range(10))
>>> a_set
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}

>>> {x**2 for x in a_set}
{0, 1, 64, 4, 36, 9, 16, 49, 81, 25}

>>> {x for x in a_set if x%2 == 0 }
{0, 8, 2, 4, 6}

>>> {2**x for x in range(10)}
{32, 1, 2, 64, 4, 128, 256, 512, 8, 16}

以上所述就是本文的全部内容了,希望大家能够喜欢。

(0)

相关推荐

  • python基于xml parse实现解析cdatasection数据

    本文实例讲述了python基于xml parse实现解析cdatasection数据的方法,分享给大家供大家参考. 具体实现方法如下: from xml.dom.minidom import * implementation = DOMImplementation() print "Core:%s" % implementation.hasFeature('core', '2.0') print "Events:%s" % implementation.hasFea

  • python解析发往本机的数据包示例 (解析数据包)

    tcp.py 复制代码 代码如下: # -*- coding: cp936 -*-import socketfrom struct import *from time import ctime,sleepfrom os import system system('title tcp sniffer')system('color 05') # the public network interfaceHOST = socket.gethostbyname(socket.gethostname())

  • python解析中国天气网的天气数据

    使用方法:terminal中输入 复制代码 代码如下: python weather.py http://www.weather.com.cn/weather/101010100.shtml 北京6天的天气数据 json格式 复制代码 代码如下: #coding=utf-8  #weather.py  import urllib  import re  import simplejson  import sys if len(sys.argv) != 2:      print 'please

  • 详细解析Python当中的数据类型和变量

    数据类型 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据,需要定义不同的数据类型.在Python中,能够直接处理的数据类型有以下几种: 整数 Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等. 计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-

  • python抓取某汽车网数据解析html存入excel示例

    1.某汽车网站地址 2.使用firefox查看后发现,此网站的信息未使用json数据,而是简单那的html页面而已 3.使用pyquery库中的PyQuery进行html的解析 页面样式: 复制代码 代码如下: def get_dealer_info(self):        """获取经销商信息"""        css_select = 'html body div.box div.news_wrapper div.main div.ne

  • 浅谈Python中数据解析

    Import os; -- Python自带 print(os.getcwd()) -- 获得当前工作目录 os.chdir('/Users/longlong/Documents') -- 转换到/Users/longlong/Documents目录 os.path.join(parm1, parm2,...) -- 从一个或多个路径片段中构造一个路径名. os.path.expanduser() -- 用来将包含-符号的路径扩展为完整的路径 复制代码 代码如下: >>> pathnam

  • 浅谈Python中的异常和JSON读写数据的实现

    异常可以防止出现一些不友好的信息返回给用户,有助于提升程序的可用性,在java中通过try ... catch ... finally来处理异常,在Python中通过try ... except ... else来处理异常 一.以ZeroDivisionError为例,处理分母为0的除法异常 def division(numerator,denominator): result=numerator/denominator return result ret1=division(1,5) prin

  • 浅谈python中的数字类型与处理工具

    python中的数字类型工具 python中为更高级的工作提供很多高级数字编程支持和对象,其中数字类型的完整工具包括: 1.整数与浮点型, 2.复数, 3.固定精度十进制数, 4.有理分数, 5.集合, 6.布尔类型 7.无穷的整数精度 8.各种数字内置函数及模块. 基本数字类型 python中提供了两种基本类型:整数(正整数金额负整数)和浮点数(注:带有小数部分的数字),其中python中我们可以使用多种进制的整数.并且整数可以用有无穷精度. 整数的表现形式以十进制数字字符串写法出现,浮点数带

  • 浅谈python中scipy.misc.logsumexp函数的运用场景

    scipy.misc.logsumexp函数的输入参数有(a, axis=None, b=None, keepdims=False, return_sign=False),具体配置可参见这里,返回的值是np.log(np.sum(np.exp(a))). 这里需要强调的是使用该函数的场景: 一般来说,该函数主要用于非常小的数值的运算(比如蒙特卡洛取样样本).在这种情况下,将数据保持log处理是必须的.所以这时你如果想将数组中的数据累加求和就需要这样计算log(sum(exp(a))),但这样做就

  • 浅谈python对象数据的读写权限

    面向对象的编程语言在写大型程序的的时候,往往比面向过程的语言用起来更方便,安全.其中原因之一在于:类机制. 类,对众多的数据进行分类,封装,让一个数据对象成为一个完整的个体,贴近现实生活,高度抽象化.但是,python对类的封装并不好,因为所有的属性和方法都是公开的,你可以随意访问或者写入,你可以在类的外部对类的属性进行修改,甚至添加属性.这的确让人感到不安. 下面就来总结一下学习后的解决方案. 1,使用2个下划线前缀隐藏属性或者方法. __xxx #!/usr/bin/python3 #-*-

  • 浅谈Python中带_的变量或函数命名

    Python 的代码风格由 PEP 8 描述.这个文档描述了 Python 编程风格的方方面面.在遵守这个文档的条件下,不同程序员编写的 Python 代码可以保持最大程度的相似风格.这样就易于阅读,易于在程序员之间交流. python中的标识符可以包含数字.字母和_,但必须以字母或者_开头,其中以_开头的命名一般具有特殊的意义. 前后均带有双下划线__的命名 一般用于特殊方法的命名,用来实现对象的一些行为或者功能,比如__new__()方法用来创建实例,__init__()方法用来初始化对象,

  • 浅谈Python中的私有变量

    私有变量表示方法 在变量前加上两个下划线的是私有变量. class Teacher(): def __init__(self,name,level): self.__name=name self.__level=level #获取老师的等级 def get_level(self): return self.__level #获取名字 def get_in_name(self): return self.__name 动态方法无法读取私有变量 即使是动态方法也无法读取私有变量,强行读取会报错. #

  • 浅谈Python中函数的定义及其调用方法

    一.函数的定义及其应用 所谓函数,就是把具有独立功能的代码块组织成为一个小模块,在需要的时候调用函数的使用包含两个步骤 1.定义函数–封装独立的功能 2.调用函数–享受封装的成果 函数的作用:在开发时,使用函数可以提高编写的效率以及代码的重用'' 函数: 函数是带名字的代码块,用于完成具体的工作 需要在程序中多次执行同一项任务时,你无需反复编写完成该任务的代码,而只需调用该任务的函数,让python运行其中的代码,你将发现,通过使用函数,程序编写,阅读,测试和修复都将更容易 1.定义函数 def

  • 浅谈python中频繁的print到底能浪费多长时间

    最近在做FLY量化交易系统的维护,总有客户说策略执行好慢,结果有些人展示策略一看,每个语句后边都要打印下数据. 哪些数据都是辅助用的,打印出来能当饭吃么,净浪费时间了 今天简单展示下print到底能消耗多少时间 例子: import time a=time.time() num=0 while num<10000: num=num+1 print(num) print('有"print"时的耗时:%f' %(time.time()-a)) b=time.time() num=0

  • 浅谈Python的方法解析顺序(MRO)

    方法解析顺序, Method Resolution Order 从一段代码开始 考虑下面的情况: class A(object): def foo(self): print('A.foo()') class B(object): def foo(self): print('B.foo()') class C(B, A): pass c = C() c.foo() C同时继承了类A和类B, 它们都有各自的foo()方法. 那么C的实例c调用foo()方法时, 到底是调用A.foo()还是B.foo

随机推荐