Python字符串(一)
一、get char
1.获取单个字符
字符串中的每一个字符都会对应一个唯一的下标(索引)用来表示字符串中的位置。
下标从0开始依次增加;0对应的是第一个字符;也可以从从-1开始依次减小,-1代表最后一个字符。
例如:’hello‘ h --> (0,-5) ,e --> (1,-4),l --> (2,-3),l --> (3,-2) ,o -->(4,-1)
'\tpytho\u4e00n' --> p --> (1,-7)
a. 语法
字符串[下标] - -获取字符串中指定下标对应的字符
b.说明:
字符串--只要结果是字符串的表达式都可以,例如:字符串字面量,字符串变量
[ ] - -固定写法
下标 - 需要获取的字符对应的下标;注意,这儿的下标不能越界。
运行结果:
2.获取部分字符(字符串切片)
语法:
字符串[开始下标:结束下标:步长] - 从开始下表开始获取到结束下标前为止。
每次下标值加上步长去获取下一个
说明:
字符串 -- 只要结果是字符串的表达式都可以,例如:字符串字面量,字符串变量
方法一:
[ ] - 固定写法
开始下标、结束下标 - 下标值(这儿下标值可以越界)
步长:必须是整数(正和负都可以);如果步长是正数,是从开始下标从前往后;
如果是步长是负数,是从开始下标从后往前。
a、 注意:
当步长为正,要求开始下标对应的字符的位置必须在结束下标对应位置之前,否则结果为空串
当步长为负,要求开始下标对应的字符位置必须在结束下标对应的字符的位置后面,否则结果为空串
结束下标一定取不到
运行结果:
练习:获取一个字符串中所有下标是奇数的字符(顺序)
运行结果:
方法二:(省略步长)
字符串[开始下标:结束下标] - -步长是1;从开始下标开始到结束下标前为止,一个一个的取!
运行结果:
方法三:(省略开始下标和结束下标)
a.省略开始下标
字符串[:结束下标:步长] - -当步长是正数,从字符串的第一个字符开始取到结束下标前为止;
当步长是负数,从字符串的最后一个字符开始取到结束下标前为止.
b.省略结束下标
字符串[开始下标::步长] - -当步长是正数,从开始下标开始取到字符串最后一个字符为止;
当步长是负数,从开始下标开始取到字符串的第一个字符为止.
例如:
运行结果:
二、字符串支持的运算符:+ ,*,>,<,==,>=,<=
python中的字符串支持数学运算的+和,以及所有的比较运算符.*
1.字符串1 + 字符串2 :将字符串1和字符串2拼接在一起产生新的字符串.
注意:数字和字符串不能混合相加
2.字符串 * N :
N 是正整数;让字符串重复N次产生一个新的字符串.
print('abc' + 123) 数字和字符串不能混合想加.
结果:
3. 比较是否相等
==,!= 可以判断两个字符串是否相等或者不等
结果:
4.字符串比较大小:从第一个字符依次往后找,找到一个不相等的字符对,判断他们编码值的大小;
谁的编码值大,对应的字符串就大,不会再往后比了.
结果:
in 和 not in操作
字符串1 in 字符串 2 --> 判断字符串2中是否包含字符串1(判断字符串1是否是字符串2的子串)
字符串1 not in 字符串 2 --> 判断字符串2中是否不包含字符串1(判断字符串1是否不是字符串2的子串)
结果:
4.len()
len(序列) ---获取序列长度,获取序列中元素个数。
len(字符串) ---获取字符串长度(个数)
注意:
一个转义字符长度是1
一个编码字符长度是1
一个空格字符长度1
一般一个手动tab键长度是4个空格
结果:
结果:
三、格式字符串
什么是格式字符串
在字符串中通过格式占位符来替代字符串中变化的部分,然后在后面通过数据或者变量确定变化
语法:
包含占位符的字符串 % (值1,值2,值3....)
说明:
占位符---%s 字符串
%d 整数
%f 小数(%.Nf 保留小数点后N位小数)
%c 字符(可以将数字转换成字符)
% --固定写法
()--固定写法,字符串中只有一个占位符的时候,这个()可以省略。
括号里面的值--值和占位符要一一对应(个数、类型、位置都要对应)
例如:我叫XX,今年xx岁,性别:X
结果:
练习: 输入一个字符串, 用一个变量保存输入的字符串的相关信息:XXX的长度是XX,最后一个字符是X
结果:
Python字符串(一)的更多相关文章
- 关于python字符串连接的操作
python字符串连接的N种方式 注:本文转自http://www.cnblogs.com/dream397/p/3925436.html 这是一篇不错的文章 故转 python中有很多字符串连接方式 ...
- StackOverFlow排错翻译 - Python字符串替换: How do I replace everything between two strings without replacing the strings?
StackOverFlow排错翻译 - Python字符串替换: How do I replace everything between two strings without replacing t ...
- Python 字符串
Python访问字符串中的值 Python不支持单字符类型,单字符也在Python也是作为一个字符串使用. Python访问子字符串,可以使用方括号来截取字符串,如下实例: #!/usr/bin/py ...
- python字符串方法的简单使用
学习python字符串方法的使用,对书中列举的每种方法都做一个试用,将结果记录,方便以后查询. (1) s.capitalize() ;功能:返回字符串的的副本,并将首字母大写.使用如下: >& ...
- python字符串基础知识
1.python字符串可以用"aaa",'aaa',"""aaa""这三种方式来表示 2.python中的转义字符串为" ...
- Python 字符串格式化
Python 字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存 一 ...
- Python 字符串操作
Python 字符串操作(string替换.删除.截取.复制.连接.比较.查找.包含.大小写转换.分割等) 去空格及特殊符号 s.strip() .lstrip() .rstrip(',') 复制字符 ...
- 【C++实现python字符串函数库】strip、lstrip、rstrip方法
[C++实现python字符串函数库]strip.lstrip.rstrip方法 这三个方法用于删除字符串首尾处指定的字符,默认删除空白符(包括'\n', '\r', '\t', ' '). s.st ...
- 【C++实现python字符串函数库】二:字符串匹配函数startswith与endswith
[C++实现python字符串函数库]字符串匹配函数startswith与endswith 这两个函数用于匹配字符串的开头或末尾,判断是否包含另一个字符串,它们返回bool值.startswith() ...
- 【C++实现python字符串函数库】一:分割函数:split、rsplit
[C++实现python字符串函数库]split()与rsplit()方法 前言 本系列文章将介绍python提供的字符串函数,并尝试使用C++来实现这些函数.这些C++函数在这里做单独的分析,最后我 ...
随机推荐
- jmeter csv 插件讲解
1.变量名称 name,pwd 格式表示因为文本中分割默认是逗号所以变量设置也是按此格式如果想按其他格式可以在分隔符栏自定义 2.忽略首行: 有的csv读取你希望读取的数据有header如: user ...
- 「NOIP2018」赛道修建
传送门 Luogu 解题思路 一眼先二分(上界树的直径,下界最小边权),然后再考虑 \(\text{DP}\). 对于当前节点 \(u\),在它的所有儿子中分别返回一条匹配不完的长度最大的路径 \(M ...
- Plastic Bottle Manufacturer - Different Cosmetic Plastic Bottle Materials, Different Characteristics
Plastic bottles are usually made of PP, PE, K, AS, abs, acrylic, PET, and the like. Dust caps for th ...
- 在自定义的widget中引入图表后,运行时出现TypeError #1009错误
本人网上查找了很多资料,其中大部分都是关于Flash中的动画效果问题,与这里的问题关系型不太大.故把问题的解决方法写在这里,与人方便,与己方便. 方法一: 1.在自定义的widget中添加如下两个方法 ...
- druid监控sql完整版
利用Druid实现应用和SQL监控 一.关于Druid Druid是一个JDBC组件,它包括三部分: DruidDriver 代理Driver,能够提供基于Filter-Chain模式的插件体系. D ...
- 2019年mybatils面试高频题(java)
前前言 2019即将过去,伴随我们即将迎来的又是新的一年,过完春节,马上又要迎来新的金三银四面试季. 那么,作为程序猿的你,是否真的有所准备的呢,亦或是安于本职工作,继续做好手头上的事情. 当然,不论 ...
- Unity热更新对比
https://www.jianshu.com/p/f9d90edf4a7c Unity 热更新为啥用Lua 详解 ILRuntime的优势 同市面上的其他热更方案相比,ILRuntime主要有以下优 ...
- PTA的Python练习题(一)
最近宅家里没事干,顺便把python给学了.教程和书看了一段时间,但是缺少练习的平台. 想起大一时候练习C语言的PTA平台,就拿来练手了. (因为没有验证码无法提交题目,所以自己用pycharm来做题 ...
- vim锁定,不能动
在vim中 ctrl+s是锁屏命令, ctrl+q是解锁
- 学习笔记(3)- BioASQ
本次目的是验证BioBERT在QA的效果. A challenge on large-scale biomedical semantic indexing and question answering ...