摘要:

python基础一中有字符串,所以这篇主要讲字符串。

一,字符串的注释

二,字符串的索引与切片

三,字符串的方法

一,字符串的注释

单引号 双引号 三引号都可以用户定义字符串。三引号不仅可以定义字符串,还可以用于注释。

  1. str = 'abcedfg'
  2. str = "abcedfg"
  3. str = '''abcedfg'''
  1. 注释如下:
  2. '''
  3. this is tes
  4. '''

  

二,字符串的索引与切片

a = 'abcefg'

a[0] 索引的值

a[0:2] 切片的值

注意:

正常情况下,小的数值放在前面,如果指定步长的值为负数,那么此时大的数值放可以放到前面。

1, 顾头不顾尾

2, 从左往右切 (默认只能)

3, 要想从右往左切,需要加一个负数

三,字符串的方法

  1. 1,capitalize  (将首字母变换成大小)
  2.  
  3. str1 = 'abc123321cda'
  4.  
  5. str1.capitalize()
  6.  
  7.       运行结果:Abc123321cda

  

  1. 2center  center(self, width, fillchar=None)   内容居中,width:总长度;fillchar:空白处填充内容,默认无.self不用填写
  2. str1 = 'abc123321cda'
  3.  
  4. str1.center(20,'#')
  5.       运行结果:'####abc123321cda####'

  

  1. 3count (关键字的个数)
  2.  
  3. str1 = 'abc123321cda'
  4.  
  5. str1.count('a')
  6.  
  7.       运行结果:2

  

  1. 4endswith' (以什么结尾,返回bool值)
  2.  
  3. str1 = 'abc123321cda'
  4.  
  5. str1.endswith('a')
  6.  
  7.       运行结果:True

  

  1. 5expandtabs (将制表符转换为空格,默认1个制表符为8个空格)
  2.  
  3. str1 = 'abc\t123321cda'
  4.  
  5. str1.expandtabs(16)
  6.  
  7.       运行结果:abc 123321cda

  

  

  1. 6find find(sub [,start [,end]]) 寻找子序列的位置,如果没找到,则返回-1.
  2.  
  3. str1 = 'abc123321cda'
  4.  
  5. str1 = 'abc123321cda'
  6.  
  7. 运行结果:2
  1. 7format 字符串格式化,动态参数。其中{0},{1}为占符。
  2.  
  3. str1 = 'ab{0}123321cd{1}'
  4.  
  5. str1.format('c','a')
  6.  
  7. 运行结果:'abc123321cda'
  1. 8index index(sub [,start [,end]]) 寻找子序列的位置,如果没有,则报错,和find类似。
  2.  
  3. str1 = 'abc123321cda'
  4.  
  5. str1.index('a')
  6.  
  7. 运行结果:'0'

  

  1. 9isalnum 是否只由数字和字母组成,以bool值返回。
  2.  
  3. str1 = 'abc123321cda'
  4.  
  5. str1.isalnum()
  6.  
  7. 运行结果:True
  8.   

  

  1. 10isalpha 是否为字母,以bool值返回。
  2.  
  3. str1 = 'abc123321cda'
  4.  
  5. str1.isalpha()
  6.  
  7. 运行结果:False
  8.   

  

  1. 11isdigit 是否数字,以bool值返回。
  2.  
  3. str1 = 'abc123321cda'
  4.  
  5. str.isdigit()
  6.  
  7. 运行结果:False

  

  1. 12islower 是否全为小写,以bool值返回。
  2.  
  3. str1 = 'abc123321cda'
  4.  
  5. str1.islower()
  6.  
  7. 运行结果:True

  

  1. 13isspace 是否全为空格,以bool值返回。
  2.  
  3. str1 = 'abc 123321cda'
  4.  
  5. str1.isspace()
  6.  
  7. 运行结果:False
  1. 14istitle 判断每个字符串第一个字母是不是大写,其他是不是小写
  2.  
  3. str1 = 'Abc123321Dda'
  4.  
  5. str1.istitle()
  6.  
  7. 运行结果:True

  

  1. 15isupper 判断每个字符串是否都为大写
  2.  
  3. str1 = 'Abc123321Dda'
  4.  
  5. str1.isupper()
  6.  
  7. 运行结果:False

  

  1. 16join 连接字符串
  2.  
  3. str1 = 'abc123'
  4.  
  5. '_'.join(str1)
  6.  
  7. 运行结果:'a_b_c_1_2_3'
  8.  
  9. 这个我一般用于列表的连接。例如:
  10.  
  11. list1 = ['hello','boy']
    ','.join(list1)
        
  1.      运行结果:'hello,boy'

  

  1. 17ljust (self, width, fillchar=None)  内容左对齐,右侧填充。
  2.  
  3. str1 = 'Abc123321Dda'
  4.  
  5. str1.ljust(20,'#')
  6.  
  7. 运行结果:'Abc123321Dda########'

  

  1. 18lower 所有字符串大小字母变小写
  2.  
  3. str1 = 'Abc123321Dda'
  4.  
  5. str1.lower()
  6.  
  7. 运行结果:'abc123321dda'

  

  1. 19lstrip  lstrip(self, chars=None)  去除左侧字符,默认为空白。
  2.  
  3. str1 = ' Abc123321Dda'
  4.  
  5. str1.lstrip()
  6.  
  7. 运行结果:'Abc123321Dda'
  1. 20partition (self, sep) 分割切前中后三部分,以元祖形式返回
  2.  
  3. str1 = 'Abc123321Dda'
  4.  
  5. str1.partition('33')
  6.  
  7. 运行结果:('Abc12', '33', '21Dda')

  

  1. 21replace 替换字符串
  2.  
  3. str1 = 'Abc123321Dda'
  4.  
  5. str1.replace('A','a')
  6.  
  7. 运行结果:'abc123321Dda'

  

  1. 22rfind 查找子序列的位置 find类似,它是从右往左找,或者说是最后1个子序列的位置,如果没找到,返回-1.
  2.  
  3. str1 = 'Abc123321cda'
  4.  
  5. str.rfind('c')
  6.  
  7. 运行结果:9

  

  1. 23rindex 查找子序列的位置 index类似,它是从右往左找,或者说是最后1个子序列的位置,如果没找到,报错!
  2.  
  3. str1 = 'Abc123321cda'
  4.  
  5. str.rindex('c')
  6.  
  7. 运行结果:9

 

  1. 24rjust (self, width, fillchar=None) 内容右对齐,右侧填充。
  2.  
  3. str1 = 'Abc123321Dda'
  4.  
  5. str1.rjust(20,'#')
  6.  
  7. 运行结果:'########Abc123321Dda'

  

 

  1. 25rpartition (self, sep) 分割切前中后三部分,以元祖形式返回,从右向左切割,即以最后1个关键字作为切割符。
  2.  
  3. str1 = 'Abc123321Dda'
  4.  
  5. str1.rpartition('2')
  6.  
  7. 运行结果:('Abc1233', '2', '1Dda')

  

  1. 26rsplit(self, sep=None, maxsplit=None) maxsplit指定切割的次数 切割,从右边开始切割,切割的字符不会出现到切割元祖中。
  2.  
  3. str1 = 'Abc123321Dda'
  4.  
  5. str1.rsplit('2')
  6.  
  7. 运行结果:['Abc1', '33', '1Dda']

  

  1. 27rstrip rstrip(self, chars=None) 去除右侧字符,默认为空白。
  2.  
  3. str1 = 'Abc123321Dda '
  4.  
  5. str1.rstrip()
  6.  
  7. 运行结果:'Abc123321Dda'

  

  1. 28split(self, sep=None, maxsplit=None) maxsplit指定切割的次数 切割,从左边开始切割,切割的字符不会出现到切割元祖中。
  2.  
  3. str1 = 'Abc123321Dda'
  4.  
  5. str1.split('2')
  6.  
  7. 运行结果:['Abc1', '33', '1Dda']

  

  1. 29splitlines 以换行符(\n)作为分割,以列表形式返回。
  2.  
  3. str1 = 'Abc123\n321Dda',
  4.  
  5. str1.splitlines()
  6.  
  7. 运行结果:['Abc123', '321Dda']

  

  1. 31, startswith' (以什么开头,返回bool值)
  2.  
  3. str1 = 'abc123321cda'
  4.  
  5. str1.startswith('a')
  6.  
  7.       运行结果:True

  

  1. 32, strip 去除左右2边字符,默认空格。
  2.  
  3. str1 = ' abc123321cda '
  4.  
  5. str1.strip()
  6.  
  7.       运行结果:'abc123321cda'
  8.  
  9. str1 = '-abc123abc#'
  10.  
  11. str1.strip('-#')
  12.  
  13. 运行结果:'abc123abc'

  

  1. 33, swapcase 小写变大写,大小变小写
  2.  
  3. str1 = 'Abc123321cD'
  4.  
  5. str1.startswith('a')
  6.  
  7.       运行结果:'aBC123321Cd'

  

  1. 34, title 字符串首字母转换成大写
  2.  
  3. str1 = 'abc123321cd'
  4.  
  5. str1 = str1.title()
  6.  
  7.       运行结果:'Abc123321Cd'

  

  1. 35, translate translate(table[, deletechars]) 返回翻译后的字符串(较复杂,要想要translate,就需要先用maketrnas创建翻译表)
  2.  
  3. table -- 翻译表,翻译表是通过maketrans方法转换而来。
  4.      
  5. deletechars -- 字符串中要过滤的字符列表。
  6. from string import maketrans
  7.  
  8. intab = 'abcde'
  9. outtab = '12345'
  10. trantab = maketrans(intab,outtab)
  11.  
  12. str1 = 'abcdefg'
  13. print str1.translate(trantab)
  14.  
  15.       运行结果:'12345fg’,从运行结果可以发现其实是将abcde用12345替代了而已
  16.      

  

 

  1. 36, upper 小写字母转换成大写
  2.  
  3. str1 = 'abc123321cd'
  4.  
  5. str.upper()
  6.  
  7.       运行结果:'ABC123321CDA'

  

  1. 37, zfill 返回指定个数的字符串,原字符串右对齐,前面填充0
  2.  
  3. str1 = 'abc123321cd'
  4.  
  5. str1.zfill(20)
  6.  
  7.       运行结果:'000000000abc123321cd'

  

python基础一数据类型之字符串的更多相关文章

  1. Python基础(3) - 数据类型:2字符串类型

    Python字符串的表示有三种方法: 1.单引号(') >>>a = 'I love python. ' 2.双引号(") >>>a = " I ...

  2. Python基础之数据类型

    Python基础之数据类型 变量赋值 Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程. 每个变量在内存中创建,都包括变量的标识,名称和数据这些信息. 每个变量在使用前都必须赋值 ...

  3. 第二章:python基础,数据类型

    """第二章:python基础,数据类型2.1 变量及身份运算补充2.2 二进制数2.3 字符编码每8位所占的空间位一个比特,这是计算机中最小的表示单位.每8个比特组成一 ...

  4. python基础一数据类型之字典

    摘要: python基础一数据类型之一字典,这篇主要讲字典. 1,定义字典 2,字典的基础知识 3,字典的方法 1,定义字典 1,定义1个空字典 dict1 = {} 2,定义字典 dict1 = d ...

  5. python基础深入(元组、字符串、列表、字典)

    python基础深入(元组.字符串.列表.字典) 一.列表 1.追加 >>>list = [1,2,3,4] #用于在列表末尾添加新的对象,只能单个添加,该方法无返回值,但是会修改原 ...

  6. 第一节 Python基础之数据类型(整型,布尔值,字符串)

    数据类型是每一种语言的基础,就比如说一支笔,它的墨有可能是红色,有可能是黑色,也有可能是黄色等等,这不同的颜色就会被人用在不同的场景.Python中的数据类型也是一样,比如说我们要描述一个人的年龄:小 ...

  7. python教程1:Python基础之数据类型和变量、字符串和编码

    视频链接:http://www.bilibili.com/video/av10730372/ 我是在Linux下玩python的,Linux下默认安装python,直接打个pyhon3就好了,pyth ...

  8. Python基础——原生数据类型(字典,列表,元组,字符串)

    字典Dictionary 字典定义了键值对的1对1管理. 1.定义字典 请看下面的栗子,我们先创建了一个具有两个元素的字典,每对都是key:value的形式. 我们能通过key得到value,但是不能 ...

  9. python基础(数字、字符串、布尔值、字典数据类型简介)

    一 执行第一个python程序 1.下载安装python2.7和python3.6的版本及pycharm,我们可以再解释器中输入这样一行代码: 则相应的就打出了一句话.这里的print是打印的意思.你 ...

随机推荐

  1. JavaScript -- Table

    -----048-Table.html----- <!DOCTYPE html> <html> <head> <meta http-equiv="c ...

  2. linux buff/cache释放

    手动释放cache # > /proc/sys/vm/drop_caches

  3. 一次Linux服务器被入侵和删除木马程序的经历

    转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://wzlinux.blog.51cto.com/8021085/1740113 一.背景 晚上看到有台服 ...

  4. Java设计模式学习记录-代理模式

    代理模式 代理模式是常见设计模式的一种,代理模式的定义是:为其他对象提供一种代理以控制对这个对象的访问. 在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起 ...

  5. 阿里巴巴java手册示例

    package com.led.daorumysql; /** * @Description:alibaba java development manual * @author 86157 * */ ...

  6. POJ 1679 The Unique MST(判断最小生成树是否唯一)

    题目链接: http://poj.org/problem?id=1679 Description Given a connected undirected graph, tell if its min ...

  7. java面向对象基础(三):对象转型和多态

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  8. CentOS6.x服务器OpenSSH平滑升级到7.3p版本——拒绝服务器漏洞攻击

    对于新安装的Linux服务器,默认OpenSSH及OpenSSL都不是最新的,需要进行升级以拒绝服务器漏洞攻击.本次介绍的是升级生产环境下CentOS6.x系列服务器平滑升级OpenSSL及OpenS ...

  9. WPF TreeView 选择事件执行两次,获取TreeView的父节点的解决方法

    1.TreeView选择事件执行两次 Very often, we need to execute some code in SelectedItemChanged depending on the ...

  10. SQL Server无法打开物理文件,操作系统错误 5:"5(拒绝访问。)的解决办法

    在新装的系统中使用SQL Server附加以前的数据库的时候可能会遇到“无法打开物理文件,拒绝访问”的错误,如下图: 解决方法为使用windows验证登录,或者更改SQL Server内置账户类型为L ...