python序列:字符串

2023-05-16

1.字符串是一种直接量或者说是一种标量,字符串是不可变类型,简单来说改变一个字符串的元素就等需要新建一个新的字符串。当然,通过拼凑各个部分得到一个新的字符串也还是可以的

注意:python的字符串并不是以\0作为结束符的

>>> astring="Hello world"
>>> astring=astring[:6]+'python'
>>> astring
'Hello python'

2.Pyhton实际上有三类字符串,通常意义下的为字符串str和unicode字符串实际上是抽象类basestring的子类,这个basestring是不能是不能实例化的,如果妄图实例化,那么

>>> basestring('foo')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: The basestring type cannot be instantiated

3.如果你想要删除字符串的一个元素,由于字符串是不可变的,所以你不能仅仅只是删除字符串中的某个元素,不过可以通过拼凑的方法来间接到达要求

>>> astring='Hello world'
>>> astring=astring[:3]+astring[4:]
>>> astring
'Helo world'

当然我么也可以通过赋一个空字符串或者使用del语句来清空或者删除一个字符串
4.字符串做对比的时候是按照ASCII码的值的大小来比较的
5.成员操作符(in ,not in)用来判断一个字符或者一个子串是否会出现在另一个字符串中

>>> astring="Hello world"
>>> "h" in astring
False
>>> "H" in astring
True

6.for 循环的else语句是一个可选项,它只在for循环完整的结束,没有遇到break时执行

这是没有遇到break,执行了后面的else语句
>>> for i in astring:
...     print i,
... else:
...     print "\nBingo"
...
H e l o   w o r l d 
Bingo

7.字符串对象的方法

>>> s.upper()   
'HELLO PYTHON'
>>> s.lower()
'hello python'
>>> s.capitalize()   #首字母大写
'Hello python'
>>> s.title()   #单词首字母大写
'Hello Python'

8.格式化操作符(%)
%d 转换成有符号的十进制
%u 转换成无符号的十进制
%o 转换成无符号的八进制
%e 转换成科学计数法
%f 转换成浮点型
%c 转换成字符

**格式化操作符辅助指令
* 定义宽度或者小数点精度
m.n m显示的最小的总宽度,n是小数点后的位数 %m.nf

>>> f=2.4545
>>> print "%4.2f"%f
2.45

小技巧
对齐的文本和指定的宽度:

>>> '{:<30}'.format('left aligned')   # <向左对其,总宽度为30
'left aligned                  '
>>> '{:>30}'.format('right aligned')  # >向右对其,总宽度为30
'                 right aligned'
>>> '{:^30}'.format('centered')      # ^在总宽度为30的范围内居中,
'           centered           '
>>> '{:*^30}'.format('centered')#^在总宽度为30的范围内居中,空白区域用*填充
'***********centered***********'

使用逗号作为千位分隔符

>>> '{:,}'.format(1234567890)
'1,234,567,890'

9.原始字符串的目的是为了对付哪些在字符串中出现的特殊字符,除了原始字符串符号(引号前面的字母r)以外,原始字符串根普通的字符串有着几乎完全相同的语法

>>> a=r"/asd/asd\n"
>>> print a
/asd/asd\n
>>> b="/asd/asd\n"
>>> print b
/asd/asd

>>>

10.chr(ascii码)与ord(string)函数

>>> ord('A')
65
>>> chr(65)
'A'
>>>

有chr(ascii码)与ord(string)函数,当然也有unichr(ascii码)与uniord(string)函数,用法都一样

11.常用的字符串类型的内建方法
string.endswith(obj,beg=0,end=len(string)) :字符串是否以obj结尾
类似的还有string.startswith(obj,beg=0,end=len(string))

>>> s="hello world"
>>> s.endswith('world')
True
>>> s.isalpha()  #全是字母返回True
False
>>> s="he11o world"
>>> s.isalpha()
False
>>> s="helloworld"
>>> s.isalpha()
True
>>>

>>> s="he11oworld"
>>> s.isalnum()   #字符串内至少有一个数字或字母返回True
True

>>> s="1231231"
>>>> s.isdigit()   #只包含数字返回True 与s.isnumeric()
True

>>> s="Title"
>>> s.istitle()   #是否标题化
True
>>> s=" title"
>>> s.lstrip()  #截掉s的左边空格 当然还有s.rstrip()右边空格
'title' 

>>> seq=['h','e','l']
>>> ''.join(seq)  #将seq中所有元素合并为一个新的字符串
'hel'
>>>'-'.join(seq)
'h-e-l'

>>> s="hello world"
>>> s.count('l')  #返回l出现的次数
3

>>> s="Hello Python"
>>> s.swapcase()   #大小写反转
'hELLO pYTHON'
>>>

>>> s="Hello Python !!!"
>>> s.split(' ')   #以空格作为分隔符切片成数组,很常用
['Hello', 'Python','!!!']
>>>

11.s虽然我们可以用单引号或者双引号来定义字符串,但是如果包含如换行符这样的特殊字符是,这个时候就应该使用三引号,经常用于HTML语句中

12.Unicode通过使用一个或者多个字节来表示一个字符的方法突破了ASCII的限制再这样的机制下,Unicode可以表示超过90000个字符

unicode()函数可以把任何python的数据类型转换成相应的Unicode字符串
s.encode(‘utf-8’)函数 参数接受编码格式,返回编码后的字符
s.decode(‘utf-8’)函数,参数接受解码格式,然后输出

遵循以下规则,处理unicode就比较简单
①。程序中出现字符串一定要加一个前缀u
②。不要用str()函数,用unicode()函数代替
③。不到必须的不要在你的程序中编解码unicode字符

转载于:https://www.cnblogs.com/cmustard/p/6769948.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python序列:字符串 的相关文章

随机推荐

  • 乱码大全(二) (转)

    乱码大全 二 转 64 more 64 2 XxencodeXML namespace prefix 61 o ns 61 34 urn schemas microsoft com Office office 34 gt 提到Uuencod
  • 成都麻将胡牌算法

    四川麻将胡牌算法 xff08 不支持风 花牌 xff09 支持缺一门 七小对 xff0c 正常胡牌 xff0c 带杠 感谢 华仔 对我的代码提出了宝贵的意见 xff0c 华仔很适合做测试啊 xff01 xff01 include lt st
  • linux lvm 扩容磁盘,Linux LVM磁盘空间扩容的新方法

    导读 传统LVM扩容方法需要增加PV磁盘 xff0c 扩容多次后 xff0c 服务器的磁盘数量会越来越多 xff0c 容易增加日后维护存储和磁盘布局的难度 当服务器是虚拟机 xff0c 或者使用SAN NAS存储的物理机时 xff0c 由于
  • keil中的串口调试:

    keil中串口的虚拟调试信息在通过View serial windows usart1 2 3 4 debug printf 可以看到 当然也可以通过虚拟串口VSPD 43 串口调试助手在外部实现 xff0c 方法如下 xff1a 虚拟 串
  • Eclipse的Ctrl+s不能保存问题的解决!

    原因1 xff1a eclipse快捷键设置有问题 xff0c 解决方式 xff1a 检查windows gt perferences gt Keys中的Save项 xff0c 是否绑定了Ctrl 43 S xff0c 以及相关设置是否正确
  • linux 查看磁盘空间大小

    1 Ubuntu 查看磁盘空间大小命令 df h Df命令是linux系统以磁盘分区为单位查看文件系统 xff0c 可以加上参数查看磁盘剩余空间信息 xff0c 命令格式 xff1a df hl 显示格式为 xff1a 文件系统 容量 已用
  • 开源三轴云台EVVGC(simple BGC)分析

    一 xff0e 主程序分析 主程序结构清晰 xff0c 流程如图所示 xff0c 下面将对每个部分做详细分析 二 系统初始化 系统初始化部分的流程如上图所示 xff0c 下面对每部分做具体分析 1 时钟初始化 该部分主要是使能DWT xff
  • 使用docker中mysql镜像

    1 拉取mysql镜像 docker pull mysql 5 6 2 运行mysql的镜像生成一个正在运行的容器 xff0c 可以通过docker contain ls得到容器的id信息 docker run dit p 3306 330
  • WARNING: CPU: 0 PID: 1 at ./arch/x86/include/asm/fpu/internal.h:373

    cut here WARNING CPU 0 PID 1 at arch x86 include asm fpu internal h 373 0xffffffffb3022ed7 Modules linked in CPU 0 PID 1
  • PMP考试概念汇总(下)

    管理沟通 xff1a 是根据沟通管理计划 xff0c 生成 收集 分发 储存 检索及最终处置项目信息的过程 本过程的主要作用是 xff0c 促进项目干系人之间实现有效率且有效果的沟通 控制沟通 xff1a 是在整个项目生命周期中对沟通进行监
  • 发现cmake使用CMakeLists.txt生成工程时的一个问题

    使用CMakeLists txt生成DLL 定义的exort字段会将全部大写变成大小写混合 xff0c 例如 NECONFIG EXPORT 在生成的工程中会变为 NeConfig EXPORT 转载于 https www cnblogs
  • .NET Core 跨平台 串口通讯 ,Windows/Linux 串口通讯,flyfire.CustomSerialPort 的使用

    目录 1 xff0c 前言 2 xff0c 安装虚拟串口软件 3 xff0c 新建项目 xff0c 加入 flyfire CustomSerialPort 4 xff0c flyfire CustomSerialPort 说明 5 xff0
  • PX4 IO [15] mixer

    PX4 IO 15 mixer PX4 IO 15 mixer 转载请注明出处 更多笔记请访问我的博客 xff1a merafour blog 163 com 2015 1
  • [转帖]k8s.gcr.io/pause的作用

    k8s gcr io pause的作用 https blog 51cto com liuzhengwei521 2422120 weilovepan520 关注 0 人评论 196人阅读2019 07 21 11 35 05 重要概念 xf
  • Ubuntu安装时怎样分区

    1 swap交换分区 xff0c 一般为你机器内存的两倍 少于这个容量 系统无法进入休眠 实质是硬盘上的交换空间而非分区 所以没有格式 xff0c 默认休眠将数据储存于此 能够取消 xff08 如不用swap必须再设定方可休眠 xff09
  • [转帖]教你如何修改运行中的docker容器的端口映射

    教你如何修改运行中的docker容器的端口映射 在docker run创建并运行容器的时候 xff0c 可以通过 p指定端口映射规则 但是 xff0c 我们经常会遇到刚开始忘记设置端口映射或者设置错了需要修改 当docker start运行
  • java实现信号量

    本文介绍的Semaphore实现基于synchronized wait 和notify notifyAll 这是java并发包之前的典型实现方式 在eclipse的源码中可以找到不少这样的案例 下文中也会把eclipse中的几个实现类作为案
  • 我失败的程序员生涯

    我 xff0c 一个普普通通的人 普通本科毕业 xff0c 来到北京成为了一个普通的程序员 2013年 xff0c 我本科毕业 xff0c 然后就踏上了北漂的征程 来之前想的很清楚 北京技术发达先进 我可以在这里工作三四年 xff0c 学习
  • python 远程关机_python实现微信远程电脑关机完整源码

    这是python实现微信远程电脑关机完整源码下载 xff0c 通过手机微信发送QQ邮件给sina邮箱 xff0c 然后利用python的pop3定时检查sina邮箱的邮件主题以及邮件来源 xff0c 并在电脑执行相应的命令行实现关机 软件介
  • python序列:字符串

    1 字符串是一种直接量或者说是一种标量 xff0c 字符串是不可变类型 xff0c 简单来说改变一个字符串的元素就等需要新建一个新的字符串 当然 xff0c 通过拼凑各个部分得到一个新的字符串也还是可以的 注意 xff1a python的字