str类字符串是不可变对象

1.创建字符串

s1 = str() #创建一个空字符串
s2 = str("hello") #创建字符串"hello"

2.处理字符串的常用函数和操作

(1).函数

len() 返回一个字符串的字符个数
max() 返回字符串中最大的字符
min() 返回字符串中最小的字符
>>>s = "Welcome"
>>>len(s)
7
>>>max(s)
'o'
>>>min(s)
'W'

字符串s为“welcome”,下面不再叙述

(2).下标运算符[ ]

s[ index ] 
index 的范围为 [ 0, len(s) - 1].
注意:python中允许负数最为下标
>>>print(s[6], s[4])
e o
>>>print(s[-1], s[-3])
e o

(3).截取运算符 [start:end]

[start:end] 截取并返回字符串s中下标从start开始到end-1结束的一个字串,若start > end,则返回空字符串
>>>s[1:4]
'elc'
>>>s[1:-1] #也可以使用负数
'elcom'
>>>s[3:-8] #截取出现交叉返回空字符串
''
 

(4).连接运算符 + ,复制运算符 *

+ :连接两个字符串。
- :对字符串进行复制
>>>s1 = "hello"
>>>s2 = "world"
>>>s1 + ' ' + s2
'hello world'
>>>3 * s1 #和s1 * 3 相同
'hellohellohello'

(5).判断一个字符串是否在另一个字符串中(in和not in)

举例:s是字符串"Welcome"
>>>'come' in s  #若为真,则返回ture
True
>>>'cat' in s #若为假,则返回false
False
>>>'cat' not in s
True

(6).比较字符串(==, !=, >,<,,>=,<=)

python通过字符串中的字符进行比较。
从第一个字符开始比较。若第一个字符相同,则比较第二个字符,以此类推。若表达式成立,则返回True,否则返回False
>>> s1 = 'integer'
>>> s2 = 'int'
>>> s1 == s2
False
>>> s1 < s2 # 'e' 的ARCII码值大于0,所以返回false
False
>>> s1 >= s2
True
 

(7).昳代字符串(用for循环)

yi代字符串s:
>>> for ch in s:
print(ch) W
e
l
c
o
m
e
>>>

3.其他字符串

(1).测试字符串

isalnum(): bool 如果这个字符串是字母数字且至少有一个字符,则返回true
isalpha(): bool 如果这个字符串是字母且至少有一个字符,则返回true
isdigit(): bool 如果这个字符串中只含有数字字符则返回true
isdentifier(): bool    如果这个字符串是python标识符则返回true
islower(): bool 如果字符串中所有的字符全是小写且至少有一个字符,则返回true
isupper(): bool 如果字符串中所有的字符全是大写且至少有一个字符,则返回true
isspace(): bool 如果字符串中所有的字符全是空格且至少有一个字符,则返回true

(2).搜索字符串

startswitch(s1: str): bool 若字符串是以子串是s1开始,则返回true
endswitch(s1: str): bool 若字符串是以子串是s1结尾,则返回true
find(s1): int 返回s1在字符串的最低下标,不存在则返回-1
rfind(s1): int 返回s1在字符串的最高下标,不存在则返回-1
count(sub string): int 返回子串在字符串中出现的无覆盖次数

(3).转换字符串

capitalize(): str 返回复制的字符串,并大写第一个字符
lower(): str 返回复制的字符串,并将所有的字母转换为小写的
upper(): str 返回复制的字符串,并将所有的字母转换为大写的
title(): str 返回复制的字符串,并大写每个单词的首字母
swapcase(): str 返回复制的字符串,并将大写字母转换为小写,小写字母转换为大写
replace(old, new): str 返回新的字符串new,用new替换所有的旧字符串old出现的地方

(4).删除字符串中的空格

lstrip(): str 返回去掉前端空白字符串的子字符串
rstrip(): str 返回去掉后端空白字符串的子字符串
strip(): str 返回去掉两端空白字符串的子字符串

(5).格式化字符串

center(width): str 返回在给定宽度域上居中的字符串副本
ljust(width): str 返回在给定宽度域上左对齐的字符串文本
rjust(width): str 返回在给定宽度域上右对齐的字符串文本
format(items): str  
 

【puthon基础】之str类字符串的更多相关文章

  1. 【python基础】之str类字符串

    str类字符串是不可变对象 1.创建字符串 s1 = str() #创建一个空字符串 s2 = str("hello") #创建字符串"hello" 2.处理字 ...

  2. Java基础——数组应用之字符串String类

    字符串String的使用 Java字符串就是Unicode字符序列,例如串“Java”就是4个Unicode字符J,a,v,a组成的. Java中没有内置的字符串类型,而是在标准Java类库中提供了一 ...

  3. python基础——使用元类

    python基础——使用元类 type() 动态语言和静态语言最大的不同,就是函数和类的定义,不是编译时定义的,而是运行时动态创建的. 比方说我们要定义一个Hello的class,就写一个hello. ...

  4. C# 基础知识系列- 9 字符串的更多用法(一)

    0. 前言 在前面的文章里简单介绍了一下字符串的相关内容,并没有涉及到更多的相关内容,这一篇将尝试讲解一下在实际开发工作中会遇到的字符串的很多操作. 1. 创建一个字符串 这部分介绍一下如何创建一个字 ...

  5. 【Java基础】常用类

    常用类 字符串相关的类 String类:代表字符串,使用一对 "" 引起来表示. public final class String implements java.io.Seri ...

  6. Java基础笔记-String类

    String 类(被final修饰) 字符串是一种特殊的对象,一旦字符串被初始化就不可以被改变了.(内容不变) 例如: String  s = “abc”; String  s1 = new Stri ...

  7. Java基础之String类

    String类 字符串是不可变的,对其做的任何改变,会生成一个对象,不会改变有原有对象. ==和equals() String s1 = "good"; String s2 = & ...

  8. Java基础总结--常用类以及包的访问权限

    -----Object---所有类的根类1.怎么得到的:通过对所有对象不断的向上抽取共性,具备所有对象的共性的东西2.常用的方法* equals(Object obj):比较两个对象的引用是否指向同一 ...

  9. PHP基础(一)--字符串函数大盘点(基础篇)

    参考地址http://php.net/manual/zh/ref.strings.php addcslashes - 以 C 语言风格使用反斜线转义字符串中的字符    string addcslas ...

随机推荐

  1. AMQP协议学习

    参考这个:http://kb.cnblogs.com/page/73759/ 写的挺好 AMQP协议是一种二进制协议,提供客户端应用与消息中间件之间异步.安全.高效地交互.从整体来看,AMQP协议可划 ...

  2. mac ox 配置java和maven

    参考http://www.cnblogs.com/iOS-mt/p/5726380.html 以及http://blog.csdn.net/done58/article/details/5113805 ...

  3. 由获取子元素的方法find和children所获

    html代码如下 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://ww ...

  4. PHP Markdown 解析器Parsedown

    PHP Markdown 解析器Parsedown http://parsedown.org/demo

  5. iOS之NSPredicate(正则表达式和UIBarController)

    本文转发至:https://segmentfault.com/a/1190000000623005 NSPredicate,这个类和我上一篇博文中提到的valueForKeyPath一样很强大.它的使 ...

  6. ibatis resultMap 的用法

    先看个具体的例子: <resultMap id=”get-product-result” class=”com.ibatis.example.Product”> <result pr ...

  7. HDU 2859 Phalanx

    简单二维dp.o(n^3)效率过的.不知道有没有o(n^2)的解法. 为了方便点,先左右交换一下. dp[i][j]表示以[i,j]为左上角的最大对称矩阵长度 那么dp[i][j]=min(Max,d ...

  8. clip实现圆环进度条

    效果主要通过clip和transform:rotate实现 把圆环分为左右两个部分,通过角度旋转对图片剪切旋转角度<=180度的时候之旋转右边,当大于180度时右边固定旋转180度的同时旋转左边 ...

  9. Keil STM32调试,使用ST-Link下载程序时提示“flash timeout.reset the target and try it again”

    参考: 很郁闷,买来没多久的 STM32F4-DISCOVERY 就挂了? STM32F103RB   Jlink调试的时候出现flash timeout.reset the target and t ...

  10. css3动画-transition

    当css属性改变的时候,控制animation的速度,让属性的变化发生在一段时间之内,而不是立即生效. 语法 transition: <property> <duration> ...