我的Python成长之路---第一天---Python基础(2)---2015年12月26日(雾霾)

本文详细介绍了Python中的基本数据类型,包括整数、浮点数、字符串、布尔值及空值,并提供了丰富的示例帮助理解每种类型的特性和用法。

    三、数据类型

    Python基本类型(能够直接处理的数据类型有以下几种)主要有5种

    1、整数(int)

    Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等。

    2、浮点数(float)

    浮点数也就是数学中的小数。由于整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的,而浮点数运算则可能会有四舍五入的误差。需要注意。

    3、字符串

    字符串是以单引号'或双引号"括起来的任意文本,比如'abc',"xyz"等等。当然单引号‘和双引号"本身也是字符,如果字符串中有单引号'或双引号"则按照如下的方法处理

    1)字符串中只有单引号如那么这个字符串可以用双引号括起来,例如

1 >>> "I'm OK"
2 "I'm OK"

     2)字符串中只有双引号如那么这个字符串可以用单引号括起来,例如

>>> 'You are "OK"'
'You are "OK"'

    3)如果字符串既有双引号又有单引号就用\做转义

>>> print('I\'m "OK"')
I'm "OK"

    转义字符\可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\\表示的字符就是\

    Python还有一种字符串的表示方法三个连续的单引号'''或双引号"""括起来如:'''ABC'''或"""ABC"""。这在Python中两种意义,一种是表示

>>> print('''line1
... line2
... line3''')
line1
line2
line3

    说明:可以看出你的字符串原始是什么格式,就按照什么格式这要比在字符串中使用\n表示回车\t表示制表符这种方式格式化输出字符串要方便的多

    三个连续的单引号'''或双引号"""括起来另外一种意义表示多可以表示多行注释

    字符串的常用操作

    字符串的切片:假设有一个字符串变量A = 'abcdefg',Python用索引表示每个字符的位置

    字符串变量A的字符索引与字符对应关系如下

索引:0123456
字符:abcdefg

 

 

    1)字符的第n个字符(从0开始计数,Python中的索引和常用的计数都是从0开始的),str[n]

>>> A = 'abcdefg'
>>> A[1]
'b'

    2)从第m个字符到第n个字符,注意:Python的切片操作是顾头不顾尾的,也就是说包括第一个m但不包括n的:str[m:n]

>>> A[2:4]
'cd'

   说明m和n是可以省略不写的,默认表示第一个和最后一个元素,注意:在省略n的情况下是包括最后一个字符的

>>> A[:]  
'abcdefg'

   另外索引值m和n可以用负数,表示从后往前数。注意由于0没有-0这个概念,所以-1表示最后一个元素,以此类推

索引:-7-6-5-4-3-2-1
字符:abcdefg

 

 

>>> A[-4:-1]
'def'

    3)从第m个字符到第n个字符,步长为p(也就是每隔p-1个字符),str[m:n:p],默认情况(省略的情况)下步长p为1,也就是中间每隔o个字符

>>> A[1::2] 
'bdf'

    字符串格式化:

    编写代码的时候我们会经常遇到需要对字符串进行拼接

    两种方式:

    第一种:用加号(不推荐)

    例如:我们有两个字符串'ABC'和'DEF'

>>> 'ABC' + 'DEF'
'ABCDEF'

    为什么不推荐?首先这种方式Python解释器要额外开辟空间进行字符串拼接,执行效率低,另外如果我们要输出'您好xxx,您的验证码是xxxx,请妥善保存!'这样的字符串,如果用加号进行拼接就会是这样的

>>> name = '65brother'    
>>> code = 'ABC'
>>> '您好' + name + ',您的验证码为' + code + ',请妥善保存!'
'您好65brother,您的验证码为ABC,请妥善保存!'

    这样会非常麻烦,而且极容易出错

    第二种方式,占位符

    同其他语言一样Python也支持站位符,常见的站位符有%d——整数、%f——浮点数、%s字符串、%x十六进制数

    例如还是上面这个需求

    我们可以这样实现

>>> '您好%s,您的验证码是%s,请妥善保存!' %(name, code)
'您好65brother,您的验证码是ABC,请妥善保存!'

    说明:()表示元祖,如果只有一个占位符并且只有一个字符串对象要加入进来可以省略

    这样的好处是高效,简洁,不容易出错,而且可以方便的实现数字和字符串的拼接(不需要强制类型转换,直接拼接),如果不做强制类型转换会出现如下报错

>>> 'ABC' + 3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: Can't convert 'int' object to str implicitl

    另外注意%s可以接收任何数据类型的数据,Python解释器会自动做类型转换,所以我们一般用%s做站位符就够了,其他的就忘了吧,用了反而会由于疏忽没做类型转换而报错

>>> '%s%s' %('ABC','3')
'ABC3'

    4、布尔值

    布尔值只有真True和假False两个值,Python中可以用整数类型1表示真True,0表示假False

    5、空值

    Python中空值表示什么都没有,用None表示。空值是一个特殊的数据类型。注意空值None不等同于0。以为0是有意义的,是一个整数类型,None没有意义,是一个特殊的数据类型。

转载于:https://www.cnblogs.com/zhangxiaxuan/p/5080889.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值