Python3学习笔记字符串

字符串                                                                                                                                                
1.单引、双引号都可以定义字符串                                    name='tom';name1="tomcat";print(name,name1);                2.三个单引号或三个双引号能够使变量的赋值跨行排列与输出结果一致转义字符:\t代表一个制表符(一个空位);\n代表自动换一行;多用来修饰代码的排列方式达到美观效果。                                                                              
html='''<html><hand>\t</hand><body> \n
 </body>
 </html>''';
 print(html)
3.截取字符串
str="zhangsan@qq.com";
切片 []  [:]  [ : : ]
获取单个字符 在[]里填写该字符串所对应的下标(左从0开始数)
 print("第一字符:"+str[0])
 print(len(str))获取字符串的长度
获取字符串最后一个字符的几种方式:
 print("最后一个字符:"+str[14])用实际下标表示
 print("最后一个字符:"+str[len(str)-1])用公式表示
 print("最后一个字符:"+str[-1])又数第一位下标是-1

多个字符截取:
从左向右:str[a:b]
str[a:b];a 表示从下标第几位开始,b表示到下标第几位,截取的长度只包括b的前一位
(str[:5]) #从零(0可省略)开始到下标5的前一位
print(str[:]);#整个字符串
print(str[5:]); #从下标5开始到结束
print(str[-5:]); #从-5到结尾
print(str[-5:-2]); #从-5到结尾 不包含后一位
从右往左:得到的是反向字符串
print(str[a:b:c]);a,b同上,c表示步长
print(str[-1:-5:-1]);
print( str[-1::-1])  #倒叙
print(str[::-1])  #倒叙
4.in或not in判断字符是否在该字符串中存在得到布尔值
email ="hang@bdqn.cn";
 print("an in email:"+ str( 'an' in email ));
 print("at  not in email:"+ str( 'at'  not in email ));
r/R:原样输出字符串, 取消特殊性(字符串前面加)
print("hello\tpython");
 print(r"\t 代表一个制表符 \n 换行符");
5.字符串格式化:(前面字符串的格式映射到后面的字符串)
 第一种用%号
%s字符  %d整数  %f 浮点型 %.2f 保留2 小数 四舍五入
 print("name:%s"%'tom');一个数值省略小括号
 print("name:%s age:%d money:%.2f"%('tom',33,90.456));
第二种 .format();格式(样式)化:
 print('name:{0} age:{1}'.format("tom",33));
 print("name:{name} age {age}".format(name="tom",age=33));前后对应的样式要统一(同是键值对或下标)
 print("name:{name} age {0}".format(name="tom",33))写法错误
想输出{0}则输出两个{{}}
print('aaa{{0}}'.format())
想输出{}则输出三个{{{}}}
print('aaa{{{0}}}'.format(""))
例如:
print("name={0}".format("tom"))找不到
print("name={{0}}".format("tom"))得到name=tom
print("name={{{0}}}".format("tom"))得到name={tom}
6.字符串的一些函数:
word="""hello python world""";
 获取字符串的长度
 print("字符串的长度:{0}".format(len(word)));
count(str,start= 0,end=len(string))  查找str(字符个数不限)出现的次数,得到的是次数
 print("字符串中 o 的次数:{0}".format(word.count("on",0,7) ));
 #capitalize()将字符串的第一个字符转换为大写
 print(word.capitalize());
 title():将每一个单词首字母大写 标题化
 print(word.title());
find 返回找到的字符串第一次的下标 找不到=-1
 print("h in word of index:{0}".format( word.find('q')));
 rfind 从右面开始找 beg-end 指定一个范围
 print("h in word of index:{0}".format( word.rfind('h',-13,-1)));
 index():没有则抛出异常。
 print("h in word of index:{0}".format( word.index('h')));
 find() vs index():如果找不到,index()产生异常,find()则返回-1
replace():str.replace("ll","LL")替换字符只是复制一份得到新的字符串,但是原字符串不会被改变。
print(word.replace("hello","nihao:"));
print(word)
split(str="", num=string.count(str)):表示以str为分隔符拆分num次
str:表示分隔符,空值默认为空格;但是()不能是""''"""否则语法错误.
num=分割几次
 s=word.split("o",5);
 print(s)
邮箱验证案例:
有一个 邮箱 验证是否合法   @ > . 获取用户名的部分  []
 email="zhangsan@163.com";
 a=email.find("@");
 if a==-1:
     print("邮箱错误 没有包含 @ ");
 elif a == 0:
     print("邮箱错误 @不能出现在第一位 ");
 elif(email.find(".")==-1):
     print("邮箱错误 没有包含 . ");
 elif(email.find(".")<email.find("@")):
     print("邮箱错误  . 的位置应该在@ 后面 ");
 else:
     print("邮箱合法 用户名是{0}".format( email[:a] ));
    
str='123abcEFG456'
(1)startswith(str, beg=0,end=len(string))
检查字符串是否是以 obj 开头,是则返回 True,否则返回 False。如果beg 和 end 指定值,则在指定范围内检查。
print(str.startwidth('123'),0,4);True
(2)endswith(suffix,beg=0,end=len(string))
检查字符串是否以 obj 结束,如果beg 或者 end 指定则检查指定的范围内是否以 obj 结束,如果是,返回 True,否则返回 False
print(str.endwidth('456'),0,4);False
(3)isalnum()如果字符串至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False
print(str.isalnum());true
(4)isalpha()如果字符串至少有一个字符并且所有字符都是字母则返回 True, 否则返回 False
  print(str.isalpha());False
(5)isdigit()如果字符串只包含数字则返回 True 否则返回 False.
print(str.isdight())False
(6)isnumeric()如果字符串中只包含数字字符,则返回 True,否则返回 False
print(str.isnumeric());false
(7)isspace()如果字符串中只包含空白,则返回 True,否则返回 False.
print(str.isspace());false
(8)lower()转换字符串中所有大写字符为小写.
print(str.lower());
(9)upper()转换字符串中的小写字母为大写
print(str.upper());
(10)swapcase()将字符串中大写转换为小写,小写转换为大写
print(str.swapcase());
(11)ljust(width[, fillchar])返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串.                width:指字符串长度,值大于原字符串的长度才有意义;fillchar:指填充字符,默认空格。                 
print str.ljust(20,'t'))                       rjust(width,[, fillchar])返回一个原字符串右对齐,并使用fillchar(默认空格)填充至长度 width 的新字符
同上

 
(12)name=name.ljust(10," ");
 print(name);
 print(name.strip());
 lstrip()截掉字符串左边的空格或指定字符。
 print(name.lstrip());
 rstrip()删除字符串字符串末尾的空格.
 print(name.rstrip());
 
(13)partition():以此字符串为节点拆分
返回头、分割符、尾三部分 返回头、尾两个空元素的3个元组。
 name="hello-python-world";
 print(name.partition(" "))
 输出('hello-python-world', '', '')
(14)join(sequence):将列表组成新的字符串,
 用法:newstr.join(sequence) 
 newstr连接项;sequence 要拼接列表 
 s="-";
 word=("a",'b','c');
 print(s.join(word))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于C++&OPENCV 的全景图像拼接 C++是一种广泛使用的编程语言,它是由Bjarne Stroustrup于1979年在新泽西州美利山贝尔实验室开始设计开发的。C++是C语言的扩展,旨在提供更强大的编程能力,包括面向对象编程和泛型编程的支持。C++支持数据封装、继承和多态等面向对象编程的特性和泛型编程的模板,以及丰富的标准库,提供了大量的数据结构和算法,极大地提高了开发效率。12 C++是一种静态类型的、编译式的、通用的、大小写敏感的编程语言,它综合了高级语言和低级语言的特点。C++的语法与C语言非常相似,但增加了许多面向对象编程的特性,如类、对象、封装、继承和多态等。这使得C++既保持了C语言的低级特性,如直接访问硬件的能力,又提供了高级语言的特性,如数据封装和代码重用。13 C++的应用领域非常广泛,包括但不限于教育、系统开发、游戏开发、嵌入式系统、工业和商业应用、科研和高性能计算等领域。在教育领域,C++因其结构化和面向对象的特性,常被选为计算机科学和工程专业的入门编程语言。在系统开发领域,C++因其高效性和灵活性,经常被作为开发语言。游戏开发领域中,C++由于其高效性和广泛应用,在开发高性能游戏和游戏引擎中扮演着重要角色。在嵌入式系统领域,C++的高效和灵活性使其成为理想选择。此外,C++还广泛应用于桌面应用、Web浏览器、操作系统、编译器、媒体应用程序、数据库引擎、医疗工程和机器人等领域。16 学习C++的关键是理解其核心概念和编程风格,而不是过于深入技术细节。C++支持多种编程风格,每种风格都能有效地保证运行时间效率和空间效率。因此,无论是初学者还是经验丰富的程序员,都可以通过C++来设计和实现新系统或维护旧系统。3

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值