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. CentOS x 64 MooseFS 学习

    一.MFS 简介.... MooseFS(Moose File System,mfs)是一种分布式文件系统,它将数据分布在网络中的 不同服务器上,支持FUSE,客户端可以作为一个 普通的Unix 文件 ...

  2. mysql问题: alter导致速度慢

    1 如何并行执行. 数据库里有一个数据量非常大的表,当对这个表进行alter的时候,这时候该表是只读的,由于数据量很大alter时间很长,如果这时候有insert或update操作,有什么办法在这期间 ...

  3. ios开发获取SIM卡信息

    .加入一个Framework(CoreTelephony.framework). .引入头文件 #import<CoreTelephony/CoreTelephonyDefines.h> ...

  4. FMDB的一些基本操作小结

    http://blog.csdn.net/iunion/article/details/7204625 仅供自己记录使用, h文件 #import <Foundation/Foundation. ...

  5. iOS调用相机,相册,上传头像

    一.新建工程 二.拖控件,创建映射 三.在.h中加入delegate @interface ViewController : UIViewController 复制代码 四.实现按钮事件 -(IBAc ...

  6. Learning How to Learn, Part 1

    Jan 8, 2015 • vancexu Learning How to Learn: Powerful mental tools to help you master tough subjects ...

  7. cf Round 594

    A.Warrior and Archer(思维) 战士一定会ban掉当前边缘的位置.而战士和射手就会选择剩下的最远的两点.我们让剩下的最远的两点最近就达到了均衡.于是我们枚举战士ban掉的边缘,ban ...

  8. group by 汇总

    group by 的意思为分组汇总.使用了group by 后,要求Select出的结果字段都是可汇总的,否则就会出错. 比如,有:{学号,姓名,性别,年龄,成绩}字段 这样写:SELECT 学号,姓 ...

  9. UVa 11790 - Murcia's Skyline

    题目大意:给一个建筑的序列,建筑用高度和宽度描述,找出按高度的LIS和LDS,最长XX子序列的长度按照序列中建筑的宽度和进行计算. 其实就是带权的最长XX子序列问题,原来是按个数计算,每个数权都是1, ...

  10. 安卓handler、thread实现异步任务

    [转]http://blog.csdn.net/lanpy88/article/details/6659630 一Handler的定义: 主要接受子线程发送的数据, 并用此数据配合主线程更新UI.   ...