1、字符串格式化方法format的用法:

< ^ > #分别为左对齐、居中、右对齐

'{:>18,.2f}'.format(70305084.0) #:冒号+空白填充+右对齐+固定宽度18+浮点精度.2+浮点数声明f

'{:^10}'.format('test') #返回test居中,共计10个字符

'{1} {0}'.format('one', 'two') #{}中的数字代表排列的顺序

'my name is {name},age is {age}'.format(name='hoho',age=19)'{0:*>10}'.format(10) #右对齐

'{0:*<10}'.format(10) ##左对齐,冒号后跟以*作为填充

b_dict = {'name':'chuhao','age':20,'province':'shanxi'}

print ('my name is {name}, age is {age},from {province}'.format(**b_dict)) #通过字典来对句子进行填充

print ('{:>7.2%}'.format(0.2)) #以百分比的形式输出值i=1 j=2

print('{} shape is {}'.format(i,j)) #返回1 shape is 2

defsayhi(a,b):print('%s 的后面是 %s' %(a ,b))

sayhi('i','ii')

2、enumerate的用法:

list=['这','是','一个','测试']for i,item inenumerate(list):print(i,item)

#输出

0 这

1 是

2 一个

3 测试

3、datetime包

from datetime importdatetime, timezone

datetime.today()#返回当天信息

dt=datetime.now() #返回现在的信息

dt.year

dt.hour

dt.minute#返回当前的分钟

dt.second #返回当前的秒

dt.weekday() #返回星期几

4、filter函数

defis_odd(n):return n % 2 == 1newlist= filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])print(newlist)#输出结果:[1, 3, 5, 7, 9]

importmathdefis_sqr(x):return math.sqrt(x) % 1 ==0

newlist= filter(is_sqr, range(1, 101))print(newlist)#输出结果:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

5、json模块()

1)json.dumps()

#json.dumps用于将dict类型的数据转换为str,因为如果直接将dict类型的数据写入json文件会报错,所以在写入数据时需要用到该函数

importjson

name_emb= {'a':'1111','b':'2222','c':'3333','d':'4444'}

jsObj=json.dumps(name_emb)print(name_emb)print(jsObj)print(type(name_emb))print(type(jsObj))###返回结果如下:

{'a': '1111', 'b': '2222', 'c': '3333', 'd': '4444'}

{"a": "1111", "b": "2222", "c": "3333", "d": "4444"}

name_emb= {'a':'1111','b':'2222','c':'3333','d':'4444'}

emb_filename= ('/home/cqh/faceData/emb_json.json')

jsObj=json.dumps(name_emb)

with open(emb_filename,"w") as f:

f.write(jsObj)

f.close()

2)json.loads()

importjson

name_emb= {'a':'1111','b':'2222','c':'3333','d':'4444'}

jsDumps=json.dumps(name_emb)

jsLoads=json.loads(jsDumps)print(name_emb)print(jsDumps)print(jsLoads)print(type(name_emb)) #返回class:dictprint(type(jsDumps))  #返回class:strprint(type(jsLoads)) #返回class:dict

6、self的简单讲解:

self表示类的实例,而非类,以如下代码为例:

classTest:defprt(self):print(self)print(self.__class__)

t=Test()

t.prt()

输出结果为:

<__main__.Test object at 0x000001DCCF2C12E8>

由结果可以发现,self代表类的实例,self.__class__指向类。

在解释器内部,t.qrt()等价于Test.prt(Test())

在继承的时候,继承的是传入的实例,而非定义了self的类的实例。以如下为例:

classParent:defpprt(self):print(self)classChild(Parent):defcprt(self):print(self)

c=Child()

c.cprt()

c.pprt()

p=Parent()

p.pprt()

在运行c.pprt()的时候,由于self指得是Child类的实例,self中未定义pprt()的方法,所以沿着继承树网上找,找到了父类Parent中定义的pprt()方法,所以成功调用。

在如下例子中,self指的是描述符类的实例:

classDesc:def __get__(self, ins, cls):print('self in Desc: %s' %self )print(self, ins, cls)classTest:

x=Desc()defprt(self):print('self in Test: %s' %self)

t=Test()

t.prt()

t.x

这里调用的是t.x,也就是Test类的实例t的属性x,由于实例t中并没有定义属性x,所以找到了类属性x。该属性是描述符属性,为Desc类的实例,所以这里就没有用Test的任何方法。若直接运行Test.x也能得到相同的结果。

另一个实例:

classperson:def __init__(self,name,job=None,pay=10):

self.name=name

self.job=job

self.pay=paydefgetLastName(cls):return cls.name.split('a')[-1]defgetRaise(self,percent):

self.pay=(int)(self.pay*(1+percent))returnself.pay

p=person('xiaoming','jixie') #用于实例化一个对象

p.getLastName()

p.getRaise(0.8)

在这里self指的是被实例化的对象p,需要调用当前的方法或者属性时,直接使用self.来进行调用就可以。

在这里init通常被称为构造函数,用于初始化,即当实例化一个对象时,对新对象进行初始化,通过传入新对象的参数将新对象的所有属性都初始化。

7、super函数的应用:

参考:http://python.jobbole.com/86787/

通过super函数实现父类的调用:

classanimal(object):def __init__(self,name):

self.name=namedefgreet(self):print('hello i am %s' %self.name)classdog(animal):defgreet(self):

super().greet()print('我擦 擦')

dog=dog('dog')

dog.greet()

#返回:hello i am dog 我擦 擦

这里animal是父类,dog是子类,我们在dog类定义了greet方法,为了同时实现父类的功能,又调用了父类的方法,从而得到相应的输出结果。

另一个继承的例子:

classBase(object):def __init__(self):print ("enter Base")print ("leave Base")classA(Base):def __init__(self):print ("enter A")

super(A, self).__init__()print ("leave A")classB(Base):def __init__(self):print ("enter B")

super(B, self).__init__()print ("leave B")classC(A, B):def __init__(self):print ("enter C")

super(C, self).__init__()print ("leave C")

输出结果为:

>>> c =C()

enter C

enter A

enter B

enter Base

leave Base

leave B

leave A

leave C

python基础语法中处理一组数据所使用的类型有哪些_python基本数据预处理语法函数(2)...相关推荐

  1. 在R、Python和Julia中常用的数据可视化技术

    俗话说"一图胜千言".通过各种图片和图形化展示,我们可以更清晰地表达很多抽象概念.理论.数据模式或某些想法.在本章中,我们首先解释为什么应该关心数据可视化.然后,我们将讨论几种在R ...

  2. python excel增加一列_(用Python修改excel中一列数据)python新增一列

    python怎么从excel中读取数据? ⒈ #import παέτο import xlrd #Ρύθμι διαδρής path='C:\\Users\\jyjh\\Desktop\\data ...

  3. python给excel排序_使用Python对Excel中的列数据进行排序

    有没有办法从excel表格中获取列,将列写入列表并将其排序,然后将它们重写为另一个Excel表格?这是我到目前为止所尝试的,但它只写入最后一列数据.我不需要前两行数据,因为它们只是标题.使用Pytho ...

  4. 【Python基础】使用Matplotlib可视化数据的5个强大技巧

    作者 | Rizky Maulana Nurhidayat 编译 | VK 来源 | Towards Datas Science [导读]数据可视化用于以更直接的表示方式显示数据,并且更易于理解.它可 ...

  5. Python提取pdf中的表格数据(附实战案例)

    14天阅读挑战赛 今天给大家介绍一个Python使用工具,那就是从pdf文件中读取表格数据,主要用到第三方库 pdfplumber. pdfplumber简介 pdfplumber是一款基于pdfmi ...

  6. python 从excel中抓取数据_使用Python抓取美团数据存于Excel中

    0.程序是针对美团中的美食部分数据按好评排序采集. 要抓取保存的数据为: 商家名类型  地理位置 评论人数  均价  最低价格 1.首先编写网页数据采集函数,使用request采集网页源码,具体实现如 ...

  7. Python学习笔记:求一组数据的众数

    一.众数概念 众数(Mode)是统计学名词,在统计分布上具有明显集中趋势点的数值,代表数据的一般水平(众数可以不存在或多于一个). 修正定义:是一组数据中出现次数最多的数值,叫众数,有时众数在一组数中 ...

  8. matlab中根据一组数据对另一个数组排序的实现方法

    前言 在编写代码过程中,可能需要出现一组数据与另外一个数组相关,并且需要根据相关数据对数组进行整体排序,我们主要思路为:将数据与数组结合成一个大数组,并使用matlab的内置函数sort函数进行排序. ...

  9. java列出所有组合_关于Java中列出一组数据的所有组合算法

    最近没有项目,顺序做了一个算法. 题目:列出一组数据所有的组合内容.如一组数据:12345,则列出这组数据所有组合.组合项可以有一项,二项,三项......如合法项为:1,12,123,1234,12 ...

最新文章

  1. 【HNOI2011】数学作业(BZOJ 2326)
  2. 首届中国高校计算机大赛-人工智能创意赛启动,百度加盟全面赋能
  3. builtins.ModuleNotFoundError: No module named ‘’scrapy.contrib‘’
  4. html5嵌套css语言,HTML5和CSS3
  5. java编译器分析_Java反编译器的剖析
  6. JSP笔记——7.自定义标签
  7. Python花式编程案例锦集(1)
  8. 第二十节:Scrapy爬虫框架之使用Pipeline存储
  9. bzoj 2281: [Sdoi2011]黑白棋 bzoj 4550: 小奇的博弈(Nimk博弈+DP)
  10. 我的书《编写高质量代码—Web前端开发修炼之道》面市了,请大家多多支持
  11. 蓝桥杯 剪邮票(dfs枚举 + bfs)
  12. 设备唯一标志的解决方案
  13. 微信小程序安装moment报错VM182 WAService.js:2 Error: module “pages/mine/myWish/detail/moment.js“ is not define
  14. keil_v4 安装(图文教程)
  15. OpenGL一维纹理映射练习
  16. 王者荣耀入门技能树-解答
  17. 阿里云天池——SQL训练计划_Task3
  18. Tensorflow2.0之用循环神经网络生成周杰伦歌词
  19. 嵌入式开发(五):海思Hi3559AV100交叉编译boost
  20. 运维日常之机房浪潮服务器硬盘红灯亮起,服务器一直响,raid磁盘红色。。。故障解决方法

热门文章

  1. [RCNN]-[YOLO]-[SSD]目标检测算法
  2. 技术胖1-4季视频复习— (看视频笔记)
  3. 数据库“裸奔”再引祸端:VOIPO数百万呼叫和短信日志流出
  4. hdu1598(并查集)
  5. CCNA笔记之第二十节:RIP协议(大实验4)
  6. 房子成焦点,被挂马的×××网站仍在增加中
  7. WCF系列_分布式事务(下)
  8. 多个服务间多个自定义的ExceptionHandler类的执行顺序
  9. java 反射 类名_java – 从反射中获取字段的类名
  10. 开关电源雷击浪涌整改_雷击浪涌的防护解析!