码迷,mamicode.com
首页 > 编程语言 > 详细

8. Python 数据类型

时间:2017-10-21 19:16:49      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:python 数据类型

1.python 的整型

编程过程中,经常会要和一些数字打交道,最多有时候求一下他们的绝对值,如下所示:

a = 100

b = -20

print (a)

print (b.__abs__())   ##这种以下划线开头的很少用

print (abs(a) + abs(b))   ##这种函数形式经常用

而在我们获得变量的时候,特别是整形和字符串之间,最容易发生字符串和整型变量之间类型转化的问题

整型在运算的时候,经常会遇到小数点精度的问题,比如:a = 1/2,那 a 等于多少呢?0.5 吗?

不对,a = 0,python的选择是去一法,不管小数点后面是什么,全部舍弃

如果想要保留小数点后面几位,就涉及到浮点数。


2. python 的浮点型

round()内置方法

用round(float)只包含数字的时候,默认保留1位小数,采用四舍五入的方式。

举例:

round(2.5)

3.0

round(1.5)

2.0

当 round(float,ndigits),包含数字和精度的时候,float代表数字,ndigits代表需要保留的精度。

一般情况也是四舍五入,但是碰到 .5 这种情况的时候,如果要取舍的位数前的小数是偶数,

则直接舍弃,如果是奇数,则向上进一。

总的来说,小数点精度最后一位只能是偶数。

举例:

roude(2.555, 2)   #奇数

2.56

roude(2.545, 2)   #偶数

2.54

6和4 都是小数点精度最后一位,都是偶数。

总结:先进行四舍五入的运算,如果小数点精度的最后一位是偶数,符合条件;

如果小数点精度的最后一位四舍五入完以后为奇数,则舍弃原小数点精度以后的所有数字,

及保证小数点精度的最后一位必须为偶数。


3.python 的布尔型

布尔型就两个值,一个是False,一个是True

一般在赋值的时候,是一个最终判断的一个返回值,然后再拿这个值进行操作。


4.python 字符串

字符串是我们经常用到的,我们用 ‘ ‘," ","""  """,都可以定义字符串,

但是最终(print)输出的结果都默认为 ‘ ‘(单引号)的字符串。[python默认]

所以,最规范的方法是定义字符串的时候用‘ ‘(单引号)

对于字符串,有很多操作字符串的方法

a = ‘sssss‘

print (dir(a))

函数 dir() 就是用来查看python数据类型都有哪些方法,打印出来很多方法,但我们

只用最常用的方法,以后用到其他的方法,我们可以再通过这个方法查询。


字符串最常用的方法

字符串默认是有下标的,默认从[0]开始,如下所示:

s = ‘hello‘

print (s[0], s[1], s[2])


find 方法:

查找字符串,如果找到返回字符串首字母匹配的下标信息,如果不匹配,则返回-1

举例:

a = ‘asdf1234ccasdfasdffkjlaklsjljlksjf‘

print (a.find(‘1234‘))

得到4,4是字符串‘1‘的下标

如果不存在呢?

print (a.find(‘q1234‘))

得到 -1

补充:find 里还有rfind方法,从右侧开始查找


replace 方法:

a = ‘asdf1234ccasdfasdffkjlaklsjljlksjf‘

print (a.replace(‘1234‘, ‘4321‘))

得到:‘asdf4321ccasdfasdffkjlaklsjljlksjf‘


split 方法:

a = ‘asdf1234ccasdfasdffkjlaklsjljlksjf‘

print (a.split(‘d‘))

将字符串,以字符串‘a‘为分隔符,切割成列表。

[‘as‘, ‘f1234ccas‘, ‘fas‘, ‘ffkjlaklsjljlksjf‘]


join 方法:

将上例生成的列表用‘hello‘连接

c = [‘as‘, ‘f1234ccas‘, ‘fas‘, ‘ffkjlaklsjljlksjf‘]

print (‘hello‘ .join(c))

得到 : ‘ashellof1234ccashellofashelloffkjlaklsjljlksjf‘


strip 方法:

b = ‘  asdf kjhgfd weryui mnbvc  ‘

(左右两边有空格,这个情况工作中经常会遇到,需要去掉两头空格后,在提取字符串的情况)

想要把左边的空格去掉

print (b.strip())

得到 ‘asdf kjhgfd weryui mnbvc‘

另外:

print (b.lstrip())    去掉字符串最左边的空格

print (b.rstrip())   去掉字符串最右边的空格

这样更能使编写代码更规范,如果不需要空格,我会把字符串取出来,把空格移除

养成习惯,以后会避免很多问题。


format 方法:

name = ‘lounan‘

print (‘hello‘ + name)

print (‘hello  %s‘  % name )     #%s代表的是字符串    %d 代表整形    %f 代表浮点型

print (‘hello  {0}‘.format(name))

以上三种执行起来,format方法 的执行效率是最高的

多个变量,使用format方法

变量:

name = ‘lounan‘

age = ‘20‘

输出样式1:

print (‘hello  {0}, my age is:{1}‘.format(name, age))

输出样式2:

print (‘hello {name}, my age is:{age}‘.format(name = ‘along‘, age = ‘30‘))   ##更换了原变量的值


5. 字符串的注释:

在python中用 # 注释,#号后面的内容都会被解释器忽略

一般都会在 "预设头文字" 后面添加(""" """)字符串来解释项目或者文件作用或解释说明等。

#!/usr/bin/env python

# -*- coding:utf-8 -*-

# @Time   : 2017/10/21 7:52

# @Author : nan

# @File   : aa.py

"""This is test file!"""

# test file


本文出自 “笔记空间” 博客,请务必保留此出处http://286577399.blog.51cto.com/10467610/1974780

8. Python 数据类型

标签:python 数据类型

原文地址:http://286577399.blog.51cto.com/10467610/1974780

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!