zoukankan      html  css  js  c++  java
  • python学习笔记(二)— 字符串(string)

    字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。

    创建字符串很简单,只要为变量分配一个值即可。例如:

    var1 = 'Hello World!'
    var2 = "xiaoming"

    一、访问字符串中的值

    var1 = 'Hello World!'
    var2 = "xiaoming"
    print(var1)
    print ( var1[0])
    print ( var2[1:5])
    print( var1[:6] + var2)

    返回:

    Hello World!
    H
    iaom
    Hello xiaoming

    二、引号

    python中定义变量的时候字符串都用用引号括起来,单引号和双引号没有区别,用啥都行,如果说这个字符串里面有单引号的话,那你外面就用双引号,里面有双引号的话,外面就用单引号,如果既有单又有双,那么用三引号,python三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符。

    三引号也可以多行注释代码,单行注释,使用#

    a = "I'm li."  # 有单引号,所以外面用双引号
    b= 'Python comments ues "li".'  ##有双引号,所以外面用单引号
    c = '''I'm li, i love "Python".'''  # 有双引号和双引号,所以外面用三引号
    '''d=print(a)
    这一段是注释,说明三引号也有多行注释的功能
    '''
    print(a)
    print(b)
    print(c)

    返回:

    I'm li.
    Python comments ues "li".
    I'm li, i love "Python".

    三、字符串格式化

    Python 支持格式化字符串的输出,有三种方式,第一种是用“+”连接,直接把输出的字符串和变量连接起来就可以了;第二种是用占位符,占位符有常用的有三种,%s、%d和%f,%s是后面的值是一个字符串,%d是后面的值必须是一个整数,%f后面是小数;第三种是使用{}和fromat方法,这三种呢,官方推荐是使用format方法,不推荐使用第一种,第一种用加号的,会在内存里面开辟多个内存空间,而后面两种是只开辟一块内存空间

    print ("我叫%s今年%d岁!" % ('小明', 10))

    返回:

    我叫小明今年10岁!

    python字符串格式化符号:

    四、字符串内置的方法

    实例1:

    name = 'my 	 name is {name},age is {age}.'
    print(name.capitalize())#大写
    print(name.center(50,'-'))#50个-,把name放中间
    print(name.endswith('u'))#是否以x结尾
    print(name.expandtabs(10))#补	的次数
    print(name.find('n'))#查找字符串的索引,显示第一个的位置
    print(name.format(name='niuniu',age=18))#这个是格式字符串
    print(name.format_map({'name':'niuniu','age':19}))#这个也是格式化字符串,后面跟的是一个字典

    返回:

    My      name is {name},age is {age}.
    --------my      name is {name},age is {age}.---------
    False
    my         name is {name},age is {age}.
    5
    my      name is niuniu,age is 18.
    my      name is niuniu,age is 19.

    实例2:

    print('122'.isdigit())#是否是数字
    print('aa'.isidentifier())#是否是一个合法的变量名
    print('aa'.islower())#是否是小写字母
    print('AA'.isupper())#是否是大写字母
    print('Loadrunner Book'.istitle())#是不是一个标题,判断首字母是否大写
    print('+'.join(['hehe','haha','ee']))#拼接字符串
    name = 'Lq'
    print(name.lower())#变成小写
    print(name.upper())#变成大写
    print('abcd'.capitalize())#将字符串的第一个字符转换为大写

    返回:

    True
    True
    True
    True
    True
    hehe+haha+ee
    lq
    LQ
    Abcd

    实例3:

    print('
      空 格 
    '.lstrip())#默认去掉左边的空格和换行
    print('
      空 格 
    '.rstrip())#默认去掉右边的空格和换行
    print('
      空 格 
    '.strip())#默认去掉两边边的空格和换行

    返回:

    空 格 
    
    
      空 格
    空 格

    实例4:

    str.maketrans('abcdefg','1234567')#前面的字符串和后面的字符串做映射
    print('cc ae gg'.translate(p))#输出按照上面maketrans做映射后的字符串

    返回:

    33 15 77

    实例5:

    print('mysql is db.'.replace('mysql','oracle',1))#替换字符串
    print('mysql is is db'.rfind('is'))#返回最右边字符的下标
    print('1+2+3+4'.split('+'))#切割字符串,返回一个list
    print('1+2+3
    1+2+3+4'.splitlines())#按照换行符分割
    print('Abcdef'.swapcase())#大小写反转

    返回:

    oracle is db.
    9
    ['1', '2', '3', '4']
    ['1+2+3', '1+2+3+4']
    aBCDEF

    实例六:

    name = 'besttest'
    print(name.count('t'))#查找某个字符串在字符串里面出现的次数
    print(name.find('d'))#找到这个字符串,返回它的下标,如果不存在的话,返回-1
    print(name.index('t')) #找到这个字符串,返回它的下标,如果不存在的话,报错
    file_name = 'a.xls'
    print(file_name.endswith('.xls'))#判断一个字符串是否以xx结尾
    sql = 'select * from user; select'
    print(sql.startswith('select'))#判断一个字符串是否以xx开头

    返回:

    3
    -1
    3
    True
    True
  • 相关阅读:
    ORA-02020 : 过多的数据库链接在使用中-Windows环境解决步骤
    <转载>c++中new一个二维数组
    C C++输出格式 <转载>仅用于个人
    *p 和p[i] 区别
    Const *ptr ptr
    C 格式化的输入输出(printf scanf)
    PP 各种快捷键
    【Java并发工具类】原子类
    【Java并发工具类】Java并发容器
    【Java并发工具类】CountDownLatch和CyclicBarrier
  • 原文地址:https://www.cnblogs.com/qikelili/p/8126942.html
Copyright © 2011-2022 走看看