转载请联系悠二之家公众号。大家好,我是Peter~从这篇文章开始,我将介绍Python中常见的数据结构:字符串、列表、集合、字典。其中字符串、列表、字典使用频率很高,需要掌握。本文介绍字符串及相关的操作和方法。最后三种字符串格式化方法将在下一篇文章中详细讲解。1、认识字符串字符串是Python中的一种数据对象,用str表示,通常用单引号或双引号(英文半角符号)包裹字符串是由零个或多个字符组成的有限序列,通常记为s=a[1]a[2]...a[m]strings="helloworld"#双引号字符串'helloworld'type(strings)strnew_strings='hellopython'#单引号new_strings使用type函数查看类型type(new_strings)strtype(100)#numerictypeinttype("100")#stringtypestr如果字符串本身有引号,我们有两种解决方法:双引号包裹单引号,使用转义符#如果内容字符串本身也包含引号#1,双引号包裹单引号x="I'mPeter!"x"I'mPeter!"#使用转义符\y='I\'mPeter'y"I'我彼得!”#3。使用r"字符内容":原始字符串z=r"I'mPeter!"z2。字符串基本操作2.1键盘输入键盘输入的任何内容都是一个字符串name=input("mynameis:")mynameis:Petername#返回的是字符串类型的数据'Peter'#键盘输入的都是字符串类型的数据age=input("myageis:")myageis:20type(age)#返回的还是一个字符串str2.2变量和字符串python中有这么一句话:variablesareuntyped,objectshavetypes在下面的例子中,我们看到:变量x可以是int类型,也可以是字符类型;但是值5和字符串python都有自己固定的数据类型。x=5#变量x可以贴在int类型的数字5上:赋值语句x="python"#变量x也可以贴在字符串类型上#通过赋值表示变量与字符串对象之间的引用关系语句a="hello-python"a'hello-python'type(a)str2.3查看字符串地址id(a)4516524144id(age)45164998242.4原始字符串r开头造成的字符串就是我们常用的原始字符串,任何放在里面的字符串都代表它原来的意思,从现在开始就不需要转义了\\npython")hello\npython#2-用r包起来print(r"hello\npython")hello\npython3.索引和slice索引和切片是python中很重要的概念,记住几点:index左边从0开始,右边从-1开始切片语法:start:end:step,step表示步长3.1index()索引用来查看一个字符的索引str1="python"id(str1)4473172336str2="thonpy"id(str2)4516506736#Looking对于某个字符的索引:索引从0开始str1.index("h")3str1.index("n")53.2切片4分关于切片的总结:标准形式:start:stop:step包含head并做不包括尾部:当包括开始部分,但不包括停止部分时,切片时,索引从左边0开始,右边从-1开始。步长step可正可负str3="learnpython"str3'learnpython'#standardcuttingstr3[0:4:1]#步长为1'lear'str3[:4:1]#0处开头可以省略'lear'str3[:4]#步长1也可以省略'lear'str3[0:4:2]#步长为2'la'str3[:10]#步长size为1,index为10,不包括10'learnpyth'str3[10:0:-2]#步长为2'otpna'str3.index("o")#从索引10处的o字符开始切,向前切104.字符串高级操作4.1查找Lengthlen(str3)124.2返回最大值每个字符都有自己对应的数字编码,通过比较数字就可以知道对应字符的大小max(str3)#根据值确定'y'min(str3)ASCII码的''ord("y")#每个字符对应的编码121ord("z")122ord("")32chr(121)#字符对应的值:反编码'y'的过程"aa">"ab"#如果第一个字符相同,比较第二个False"aac">"aab"#c大于bTrue4.3判断是否有"p"instr3True"q"instr3Falsestr3'learnpython'4.4字符串重复str1'python'str1*3'pythonpythonpython'4.5连接字符串有两种方式:通过+来实现通过joinstr1*3'python'str4="learn"#str4'learn后面有一个空格'str4+str1'学习python'"I"+""+"am"+"Peter"#多次使用+号连接'我是Peter'#join连接"".join(("learn","python"))#连接符号为空格'learnpython'"+".join(("learn","python"))#连接符号为+'learn+python'"".join(("I","am","Peter"))'我是Peter'8+"python"#不同类型的数据不能相加,看下面报错---------------------------------------------------------------------TypeErrorTraceback(mostrecentcalllast)
