str 数据类型的用法
---------------------------------------------------------------------------------------------------------------------------
str:
方法: 44种
'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill' |
a ="hello world"
方法 |
含义 |
实例 |
capitalize() |
把字符串的第一个字符大写 |
In [146]: a.capitalize() Out[146]: 'Hello world' |
casefold |
相当于lower() |
In[1]:'HELLO ORLD'.casefold() Out[1]: 'hello world' |
center |
返回一个原字符串居中,并填充至长度 width 的新字符串 |
In [3]: a.center(20,"*") Out[3]: '****hello world*****' |
count |
返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数 |
In [4]: a.count("h") Out[4]: 1 In [7]: a.count("o",1,20) Out[7]: 2 |
encode encode(self, encoding='utf-8', errors='strict') |
以 encoding 指定的编码格式解码 string,如果出错默认报一个 ValueError 的 异 常 , 除 非 errors 指 定 的 是 'ignore' 或 者'replace' |
In [8]: a.encode() Out[8]: b'hello world' |
endswith |
检查字符串是否以 obj 结束,如果beg 或者 end 指定则检查指定的范围内是否以 obj 结束,如果是,返回 True,否则返回 False. |
In [9]: a.endswith("d") Out[9]: True In [10]: a.endswith("d",1,9) Out[10]: False |
expandtabs |
定义\t的空格数 把字符串 string 中的 tab 符号转为空格,tab 符号默认的空格数是 8 |
In [12]: a.expandtabs() Out[12]: 'hhh fff' In [13]: len(a) Out[13]: 7 In [14]: a.expandtabs(2) Out[14]: 'hhh fff' In [15]: len(a) Out[15]: 7 |
find |
检测 str 是否包含在 string 中,如果 beg 和 end 指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回-1 |
In [16]: a ="hello world" In [17]: a.find("w") Out[17]: 6 |
format |
格式化字符串 |
In[20]: "{},{name}".format("hello",name="Tom") Out[20]: 'hello,Tom' |
format_map |
同上,很少使用 |
In [31]: b = "{name}" In[32]: b.format_map({"name":"tom"}) Out[32]: 'tom' |
index |
同find |
In [33]: a.index("o") Out[33]: 4 |
isalnum |
如果 string 至少有一个字符并且所有字符都是字母或数字则返 回 True,否则返回 False |
In [34]: "asdfas".isalnum() Out[34]: True In [35]: "#$%^&*(".isalnum() Out[35]: False |
isalpha |
如果 string 至少有一个字符并且所有字符都是字母则返回 True, 否则返回 False |
In [36]: "asd1111".isalpha() Out[36]: False In [37]: "asd".isalpha() Out[37]: True |
isdecimal |
如果 string 只包含十进制数字则返回 True 否则返回 False. |
In [41]: "2131".isdecimal() Out[41]: True |
isdigit |
如果 string 只包含数字则返回 True 否则返回 False. |
In [44]: "asd222".isdigit() Out[44]: False In [45]: "3333".isdigit() Out[45]: True |
islower |
如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False |
In [46]: "asdfSD".islower() Out[46]: False In [47]: "asdfas".islower() Out[47]: True |
isidentifier |
检查字符串是否是字母开头 |
"asdfasd".isidentifier() #true "123asdfasd".isidentifier() #false |
isnumeric |
检测字符串是否只由数字组成。这种方法是只针对unicode对象 |
In [48]: "asdfasd".isnumeric() Out[48]: False In [49]: "32444".isnumeric() Out[49]: True |
isprintable |
判断字符串中所有字符是否都属于可见字符 |
In [50]: "sdfas".isprintable() Out[50]: True In [51]: "\tasdfas".isprintable() Out[51]: False In [52]: "\nasdfas".isprintable() Out[52]: False |
isspace a="" b=" " if a: print("空") if b: print("空字符串") #空字符串 |
如果 string 中只包含空格,则返回 True,否则返回 False. In [56]: len("") Out[56]: 0 In [57]: len(" ") Out[57]: 1 注意:” ”空格的bool类型是True |
In [54]: "".isspace() Out[54]: False In [55]: " ".isspace() Out[55]: True In [59]: bool("") Out[59]: False In [60]: bool(" ") Out[60]: True |
istitle |
如果 string 是标题化的(见 title())则返回 True,否则返回 False 即每个单次的首字母为大写 |
In [62]: 'Hello World Test'.istitle() Out[62]: True In [63]: "hello world test".istitle() Out[63]: False |
isupper |
是否否是大写 |
In [64]: "HHHH".isupper() Out[64]: True In [65]: "HHHHh".isupper() Out[65]: False |
join |
以 string 作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串 |
In [69]: "*".join(['hello', 'world', 'test']) Out[69]: 'hello*world*test |
ljust |
返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串 |
In [71]: "hhhh".ljust(20,"*") Out[71]: 'hhhh****************' In [73]: len('hhhh****************') Out[73]: 20 |
lower |
转换 string 中所有大写字符为小写. |
In [74]: "HHHHh".lower() Out[74]: 'hhhhh' |
lstrip |
截掉 string 左边 |
In [75]: " asdfa ".lstrip() Out[75]: 'asdfa ' In [76]: "***8hhhh****".lstrip("*") Out[76]: '8hhhh****' |
maketrans |
(⊙o⊙)… |
(⊙o⊙)… |
partition |
有点像 find()和 split()的结合体,从 str 出现的第一个位置起,把 字 符 串 string 分 成 一 个 3 元 素 的 元 组 (string_pre_str,str,string_post_str),如果 string 中不包含str 则 string_pre_str == string. |
In [77]: "hello world test".partition(" ") Out[77]: ('hello', ' ', 'world test') |
Max |
返回字符串 str 中最大(小)的字符 |
In [80]: max("asdfasasd22") Out[80]: 's' In [81]: min("asdfasasd22") Out[81]: '2' |
Min |
||
replace(old, new, count=None) |
把 string 中的 str1 替换成 str2,如果 num 指定,则替换不超过 num 次. |
In [83]: "hello world".replace("l","肚子饿",2) Out[83]: 'he肚子饿肚子饿o world' |
rfind |
类似于find |
In [84]: "hello world".rfind("l") Out[84]: 9 |
rindex |
类型与index |
In [87]: "hello world".rindex("l") Out[87]: 9 |
rjust |
类似于ljust |
print("hello world".rjust(20,"*")) #*********hello world |
rpartition |
类似于partition |
/ |
rstrip |
类似于rstrip |
In [93]: "***8hhhh****".rstrip("*") Out[93]: '***8hhhh' |
Split split(self, sep=None, maxsplit=-1) |
以 str 为分隔符切片 string,如果 num有指定值,则仅分隔 num 个子字符串 In[104]:"hello world test".split() Out[104]: ['hello', 'world', 'test'] |
In [100]: "hello world test".split(" ",2) Out[100]: ['hello', 'world', 'test'] In [101]: "hello world test".split(" ",1) Out[101]: ['hello', 'world test'] In [102]: "hello world test".split(" ",0) Out[102]: ['hello world test'] In [103]: "hello world test".split() Out[103]: ['hello', 'world', 'test'] |
rsplit |
类似split() |
In [109]: "hello world te".rsplit(" ",1) Out[109]: ['hello world', 'te'] |
splitlines |
类似split() |
In[118]: "hello\nwold\ntest".splitlines() Out[118]: ['hello', 'wold', 'test'] |
startswith |
以xxx开头 |
In [120]: "hello world test".startswith("h") Out[120]: True |
strip |
去除两边的 |
In [121]: "******hello*******".strip("*") Out[121]: 'hello' |
swapcase |
翻转 string 中的大小写 |
In [124]: "sdfaHHHHs".swapcase() Out[124]: 'SDFAhhhhS' |
title |
转换成title类型 |
In [125]: "hello world test".title() Out[125]: 'Hello World Test' |
translate |
/ |
/ |
upper |
转成大写 |
In [136]: 'swht'.upper() Out[136]: 'SWHT |
zfill |
指定字符串的长度。原字符串右对齐,前面填充0 |
In [138]: 'swht'.zfill(10) Out[138]: '000000swht' |
In |
In [139]: "l" in "hello" Out[139]: True |
|
== |
/ |
In [140]: "asdf"=="asdf" Out[140]: True |
str 数据类型的用法的更多相关文章
- day01-day04总结- Python 数据类型及其用法
Python 数据类型及其用法: 本文总结一下Python中用到的各种数据类型,以及如何使用可以使得我们的代码变得简洁. 基本结构 我们首先要看的是几乎任何语言都具有的数据类型,包括字符串.整型.浮点 ...
- str.format格式化用法(通过{}来替代%)
# -*- coding: utf-8 -*- #python 27 #xiaodeng #str.format格式化用法(通过{}来替代%) ''' >>> help(format ...
- Mybatis中动态SQL语句中的parameterType不同数据类型的用法
Mybatis中动态SQL语句中的parameterType不同数据类型的用法1. 简单数据类型, 此时#{id,jdbcType=INTEGER}中id可以取任意名字如#{a,jdbcType ...
- Redis详解(三)------ redis的五大数据类型详细用法
我们说 Redis 相对于 Memcache 等其他的缓存产品,有一个比较明显的优势就是 Redis 不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据 ...
- Python数据类型的用法
字符串的用法 res = 'hellow,world' print(res) #res.显示的都是它的方法,下划线的除外 1 判断字符串的结尾字符,返回的值的布尔形式 endswith 判断字符串的开 ...
- Redis 详解 (三) redis的五大数据类型详细用法
目录 1.string 数据类型 2.hash 数据类型 3.list 数据类型 4.set 数据类型 5.zset 数据类型 6.系统相关命令 7.key 相关命令 我们说 Redis 相对于 Me ...
- Python 数据类型及其用法
本文总结一下Python中用到的各种数据类型,以及如何使用可以使得我们的代码变得简洁. 基本结构 我们首先要看的是几乎任何语言都具有的数据类型,包括字符串.整型.浮点型以及布尔类型.这些基本数据类型组 ...
- day 50 js-part1基础语法,数据类型及用法,流程控制语句,循环
js基本概念: JavaScript 是世界上最流行的脚本语言. JavaScript 被数百万计的网页用来改进设计.验证表单.检测浏览器.创建cookies,以及更多的应用. JavaScript ...
- 关于python中str数据类型的内置常用方法(函数)总结
str基本数据类型常用功能 center(self,width,fllchar=none) 内容居中,width表示总长度,fllchar表示空白处默认为 ...
随机推荐
- pip快速下载安装python 模块module
g刚开始学习python时,每次想要安装某个module,都到处找module的安装包(exe.whl等) 装setuptools,然后在cmd里用easy_install装pip,然后用pip装你要 ...
- django前端到后端一次完整请求实例
一.创建项目:# django-admin startproject mysite# cd mysite# python manage.py startapp blog 目录结构: 一.html文件: ...
- runloop的source
以上是完整的 CFRunLoop 和 CFRunLoopMode 的结构体源码(太长了我的妈,用不着看完),下面我精简一下,把重要的留下,看如下代码(可以仔细看一下,加深印象): 上面是精简出来比较关 ...
- Mac-O文件加载的全过程(一)
在Mac的开发中, 有没有想过当我们点击可执行文件之后,Mac究竟做了什么事情才让我们的程序运行起来? 对于应用层开发人员或者普通的用户而言, 其实无需知道的这么详细:但是对于内核开发人员而言, 如果 ...
- tinymce原装插件源码分析(七)-使能css、script
在tinymce中使用css个script tinymce的编辑器中css和script默认是不起作用的.(编辑器主要面向写文章使用,考虑到xss攻击,默认是不启用的) 需要修改tinymce.js中 ...
- CF833B The Bakery (线段树+DP)
题目大意:给你一个序列(n<=35000),最多分不大于m块(m<=50),求每个块内不同元素的数量之和的最大值 考试的时候第一眼建图,没建出来,第二眼贪心 ,被自己hack掉了,又随手写 ...
- 基于Linux的v4l2视频架构驱动编写
其实,我刚开始一直都不知道怎么写驱动,什么都不懂的,只知道我需要在做项目的过程中学习,所以,我就自己找了一个关于编写Linux下的视频采集监控项目做,然后上学期刚开学的时候听师兄说,跟院长做项目,没做 ...
- (转载)spring 之间的远程调用-Spring Http调用的实现
原文:https://www.cnblogs.com/lewisat/p/6132082.html 1:Spring Http设计思想 最近在研究公司自己的一套rpc远程调用框架,看到其内部实现的设计 ...
- PatentTips - Safe general purpose virtual machine computing system
BACKGROUND OF THE INVENTION The present invention relates to virtual machine implementations, and in ...
- HDU 4165
一块药看成括号配对就行了.很明显的直接求卡特兰数. 今晚看了HDU 3240的题,有一点思路,但无情的TLE.想不到什么好方法了,看了别人的解答,哇...简直是天才的做法啊....留到星期六自己思考一 ...