博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DAY02 - 数据类型: 字符串
阅读量:6905 次
发布时间:2019-06-27

本文共 3417 字,大约阅读时间需要 11 分钟。

字符串

定义:在单引号\双引号\三引号内,由一串字符组成

name='PatHoo' #本质为 name=str('PatHoo')

常用方法:

索引

1 name='PatHoo'2 print(name[0]) >>> P3 print(name[1000]) >>> #IndexError: string index out of range

移除(默认移除空格)

1 name=input('username: ').strip()2 print(name)3 4 name='***PatHoo********'5 print(name.strip('*')) >>> PatHoo6 print(name.lstrip('*')) >>> PatHoo******** 7 print(name.rstrip('*')) >>> ***PatHoo

切分(默认按空格切分)

1 user_info='root:x:0:0::/root:/bin/bash'2 print(user_info.split(':')[5])>>> /root3 cmd_info='get|a.txt|333333333'4 print(cmd_info.split('|')[0]) >>> get5 print(cmd_info.split('|',1)) #切分一次>>> ['get', 'a.txt|333333333'] 6 msg='name PatHoo age 18' 7 print(msg.split()) >>> ['name', 'PatHoo', 'age', '18']

取长度

1 name='PatHoo'2 print(name.__len__()) >>> 63 print(len(name)) #name.__len__() >>> 6

切出子字符串

1 name='hello world'2 print(name[1])  #下标从0开始 >>> e 3 print(name[1:7]) #不包含末尾的下标 >>> ello w 4 print(name[1:7:3]) #每隔2个字符 >>> eo

 

字符的其他方法(掌握)

1 name='Patrick Hoo'2 print(name.endswith('oo')) >>> True3 print(name.startswith('P')) >>> True
1 name='PatHoo say: i have a dream, my name is PatHoo.'2 print(name.replace('PatHoo','VIMMER',1)) >>> VIMMER say: i have a dream, my name is PatHoo.
1 print('{} {} {}'.format('PatHoo',18,'male')) >>> PatHoo 18 male2 print('{0} {1} {0}'.format('PatHoo',18,'male')) >>> PatHoo 18 PatHoo3 print('NAME:{name} AGE:{age} SEX:{sex}'.format(age=18,sex='male',name='PatHoo')) >>> NAME:PatHoo AGE:18 SEX:male
1 num='123'2 print(num.isdigit()) >>> True
1 while True:2     age=input('>>: ').strip()3     if len(age) == 0:continue4     if age.isdigit():5         age=int(age)6         print(age,type(age))

 

字符其他需要了解的方法

1 name='PatHoo hello'2 print(name.find('o')) #找到则显示第一个字符的下标 >>> 43 print(name.find('x')) #没找到显示-1, 不报错 >>> -14 print(name.find('l',8,11)) #按范围查找>>> 95 print(name.index('o')) #找到则显示第一个字符的下标 >>> 4 6 print(name.index('x')) #没找到报错 >>> ValueError: substring not found
1 name='PatHoo hello'2 print(name.count('o',3,6)) >>> 2
1 L=['PatHoo','say','hello','world'] #用join方法拼接, 列表内容必须都是字符串2 print(':'.join(L)) >>> PatHoo:say:hello:world
1 name='PatHoo'2 print(name.center(30,'*')) >>> ************PatHoo************ 3 print(name.ljust(30,'*')) >>> PatHoo************************ 4 print(name.rjust(30,'*')) >>> ************************PatHoo 5 print(name.zfill(30)) >>> 000000000000000000000000PatHoo
1 name='PatHoo\thello'2 print(name) >>> PatHoo    hello3 print(name.expandtabs(1)) #TAB键用1个空格表示 >>> PatHoo hello
1 name='PatHoo'2 print(name.lower()) >>> pathoo3 name='PatHoo'4 print(name.upper()) >>> PATHOO
1 name='PatHoo say'2 print(name.capitalize()) #首字母大写 >>> PatHoo say3 print(name.swapcase()) #大小写翻转 >>> pAThOO SAY 4 msg='PatHoo say hi'5 print(msg.title()) #每个单词的首字母大写 >>> PatHoo Say Hi6 name='PatHoo123'7 print(name.isalnum()) #字符串由字母和数字组成 >>> True8 name='PatHoo'9 print(name.isalpha()) #字符串只由字母组成 >>> True
1 num1=b'4' #Bytes 2 num2=u'4' #unicode,python3中无需加u就是unicode 3 num3='四' #中文数字 4 num4='Ⅳ' #罗马数字 5  6 #bytes,unicode 7 print(num1.isdigit()) >>> True 8 print(num2.isdigit()) >>> True 9 print(num3.isdigit()) >>> False10 print(num4.isdigit()) >>> False11 12 13 #isdecimal:unicode14 print(num2.isdecimal()) >>> True15 print(num3.isdecimal()) >>> False16 print(num4.isdecimal()) >>> False17 18 19 #isnumberic:unicode,汉字,罗马20 print(num2.isnumeric()) >>> True21 print(num3.isnumeric()) >>> True22 print(num4.isnumeric()) >>> True

 

转载于:https://www.cnblogs.com/hugengfeng/p/7291967.html

你可能感兴趣的文章
关于评论系统有限层及无限层评论的肤浅认知
查看>>
百度地图api在Html中显示,在jsp页面中不显示解决方法
查看>>
第六章实验
查看>>
观察者模式(Observer Pattern)
查看>>
Java编程中的美好
查看>>
SEO思考:逆水行舟 不进则退
查看>>
螺旋方阵
查看>>
nginx 跨域。。。掉坑里了,小心
查看>>
pyextend库-merge可迭代对象合并函数
查看>>
RHEL6 配置本地YUM源
查看>>
【算法】双线性插值
查看>>
c++中冒号(:)和双冒号(::)的用法
查看>>
作用域、闭包、模拟私有属性
查看>>
http tunnel使用简介(ZT)
查看>>
CefSharp的简单应用,制作自动学习视频软件(基于Chromium)
查看>>
Wdcp Apache、NGINX支持中文URL图片、文件名的解决方法
查看>>
非模态窗口的创建方法
查看>>
ORA-00445: Background Process "xxxx" Did Not Start After 120 Seconds
查看>>
转:美团数据库运维自动化系统
查看>>
数据分析之分布式爬虫---分布式爬虫架构
查看>>