python字符串索引

一、字符串

1、python字符串负数索引

假如你要访问一个字符串的最后一个字符,而不是第一个字符。那么你可以这样的表达式

name = "Tomaalva adson"
s = name[len(name)-1]
当然还有更简洁的一种:

name = "Tomaalva adson"
s = name[-1]
在访问字符串末尾附近的字符方面,Python提供了一种更为便利的方式: 负数索引。其理念是沿从右向左的方向,用负数表示字符串中字符的索引。

>>> fruit = "water melon"
>>> fruit[-1]
'n'
>>> fruit[-2]
'o'
>>> fruit[-3]
'l'

下图说明了正数、负数索引的工作原理。



2、使用for循环访问字符串

def codesum(s):
    total = 0
    for c in s:
        total+=ord(c)
    return total
print(codesum("abracadabra"))


二、字符

1、字符串由字符组成,而字符本身是一个非常复杂的问题。所有字符都有对应的字符编码,你可以使用ord函数来获取。

例如:

>>> ord("a")
97
>>> ord("A")
65
>>> ord("1")
49
>>> ord("[")
91
>>>
字符编码是根据unicode分配的,而unicode是一个庞杂的编码标准,涵盖了全球所有各种语言的符号和字符。

2、转义字符

并非所有的字符都有可视的标准符号。例如,换行符、回车字符、制表符都是不可见的,虽然他们带来的结果是可见的。这些字符属于“空白字符”-----在印刷页面上显示为空白。

为处理空白字符以及其它不可打印的字符,python使用一种特殊表示法---转义字符。

一些常见的转义字符:

---------------------------------------------------------------------------------

字符       含义

\\ 反斜杠

\' 单引号

\" 双引号

\n 换行符

\r 回车

\t 水平制表符

--------------------------------------------------------------------------------

三、字符串切片

在python中使用切片可以获取字符串的子串。

要对字符串执行切片操作,可指定两个索引:要提取第一个字符的索引,要提取的最后一个字符的索引加1.

例如:

>>> fruit = "wate melon"
>>> fruit = "water melon"
>>> fruit[0:5]
'water'
用于切片的索引与用于访问各个字符的索引相同:第一个索引总是为0,而最后一个索引总是比字符串长度小1.一般而言,s[begin:end]返回从索引begin到end-1的字符串。

请注意,如果s是一个字符串,如果要获取索引i对应的字符。可以使用s[i]或者s[i:i+1]

2、获取切片的捷径

如果你省略切片的开始索引,python将假定它为0,如果你省略切片的终止索引,它默认提取到字符串末尾:

>>> fruit = "water melon"
>>> fruit[0:5]
'water'
>>> fruit[:5]
'water'
>>> fruit[6:]
'melon'
>>> fruit[5:]
' melon'

定义一个方法,获取文件名中的拓展名:

def get_file_ext(fullname):
    dot = fullname.rfind(".")
    if not dot:
        return ""
    else:
        return fullname[dot+1:]
ret = get_file_ext("apple pie.py")
print(ret)

3、改变大小写的函数

capitalize()函数 让字符串第一个字符变成大写

upper()函数 让字符串所有字母都大写

lower()函数,让字符串所有 字母都小写

swapcase()函数,让字符串中的大写变小写,小写变大写。

title()函数,让字符串的大小写符合头衔的要求



  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值