Python 类型和运算(一)【数字和字符串】

数字

Python的数字包含整数(123),浮点型(1.23),长整形(这个数值无限长度)。

例如:

>>> l=123
>>> l
123

简单赋值

>>> l=2*2
>>> l
4

加减乘除

>>> l=2**10
>>> l
1024

在数值时候‘**’代表次幂。

除了这些简单的基本运算,Python还提供math库,用于复杂的计算。

>>> import math
>>> math.pi
3.141592653589793
>>> math.sqrt(4)
2.0

第一行的import math是导入math模块。

random可以作为随机数字生成器和随机选择。

>>> import random
>>> random.random()
0.9771716414571444
>>> random.choice(['a','b','c'])
'b'

 

字符串

Python的字符串是一个任意字符的集合,是用来记录文本信息的,他在Python中作为一个序列(也就是,一个包含其他对象的有序集合),序列的元素根据他们的相对位置存储和读取,字符串是单个字符的序列。其他的序列还包括列表和元组。

*序列的操作*

作为序列,字符串支持假设其中元素包含位置顺序的操作。

例如我们有一个4个字符的字符串,我们可以通过len函数来查看长度。

>>> l='time'
>>> len(l)
4

通过索引得到各个元素

>>> l[0]
't'
>>> l[1]
'i'
>>> l[-1]
'e'

在Python中,索引是从最前面的偏移量开始编码的,第一项为1,向后一次加1.。。。

当索引为负数时,表示倒数,也就是从后向前数。

序列不光支持索引,还支持分片。分片就是可以提出一段内容,和间隔一段距离的提取。

格式为[开始偏移量:结束偏移量:步长](结束偏移量不包含当前量的值,就是结束偏移量如果是3,那么实际就到2)当步长为负数时,就是逆序输出(#该部分为个人理解,l[-1]=l[0],l[-2]=l[1],l[-3]=l[2],l[-4]=l[3]#)。偏移量为整数,没有特定界限,与分片不同,分片有越界的危险!

>>> l[::2]
'tm'
>>> l[1:]
'ime'
>>> l[1:2]  
'i'
>>> l[::-1]
'emit'
>>> l[1:3:-1]
''
>>> l[3:1:-1]
'em'
>>> l[3:0:-1]   #没法输出‘t’
'emi'
>>> l[3::-1]  #这样就可以输出了
'emit'
>>> l[3:-5:-1] #可以用负数表示
'emit'
>>> l[0:7]  #越界不会报错
'time'
>>> l[20:23]  
''
>>> l[::2] #步长为2
'tm'

最后,字符串作为序列也支持’+‘链接和’*‘重复。

>>> l+'123'
'time123'
>>> l*3
'timetimetime'

类型特定的方法

目前学习的字符串的操作方法都是一个真正的序列操作,也就是说这些操作在其他的序列中也可以工作,但有相同就会有不同,也就是说在不同的序列类型,都会有其不同的方法。

例如:‘find’就是用于查找子字符串的。(它将返回一个子字符串的偏移量,若没有则返回-1)

>>> l
'time'
>>> l.find('im')
1
>>> l.find('z')
-1

还有很多这种方法,例如通过分隔符将字符串拆分为子字符串,将字符串转换成全大写,去掉字符串后的空格字符,等等。。。。。

>>> line='aaa,bbb,ccccc,dd'
>>> line.split(',')
['aaa', 'bbb', 'ccccc', 'dd']
>>> s='test'
>>> s.upper()
'TEST'
>>> line='aaaa,bbb\n'
>>> line=line.rstrip()
>>> line
'aaaa,bbb'

编写字符串的其他方法

字符串也支持转意字符,并且他对于双引号和单引号是没有区别的,但是它多引入了一个三引号的概念,三引号怎么使用呢?其实很简单,就是按照你的格式进行输出。

例如

>>> l="""a
b"""
>>> l
'a\nb'
>>> l='a\nb'
>>> l
'a\nb'

 

  Python的转义字符及其含义

 

    符    号    说     明
      \'  单引号
      \"  双引号
      \a  发出系统响铃声
      \b  退格符
      \n  换行符
      \t  横向制表符
      \v  纵向制表符
      \r  回车符
      \f  换页符
      \o  八进制数代表的字符
      \x  十六进制数代表的字符
      \000  终止符,\000后的字符串全部忽略

 

   如果在字符串中输出"\",需使用"\\"

字符串的匹配模式将在正则表达式中专门学习!

转载于:https://my.oschina.net/u/2951890/blog/828085

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值