zoukankan      html  css  js  c++  java
  • python之str字符串

    字符串是python非常重要的数据类型,它是一个序列(列表和元组也是序列),有下标,可以通过下标遍历字符串序列;同时字符串也是一个不可变数据类型,每次使用"+"拼接字符串时都会产生一个新的字符串付给变量

    一.字符串的定义

    (1)使用引号包含的都是字符串,单引号,双引号,三引号

    name1 = 'hehe'
    name2 = "hehe"
    name3 = '''hehe'''
    print(type(name1))
    print(type(name2))
    print(type(name3))
    
    输出结果
    <class 'str'>
    <class 'str'>
    <class 'str'>

    (2)input()函数输入的为字符串类型

    name = input("pls input your name:")
    print(type(name))
    
    输出i结果如下(输入yangbuhui)
    pls input your name:yangbuhui
    <class 'str'>

    (3)str()转换的为字符串类型

    age = 19
    print(type(age))
    print(type(str(age)))
    
    输出结果如下:
    <class 'int'>
    <class 'str'>

    二.使用下标遍历字符串

    0,1,2,3,4即为该字符串的下标,使用str1[0]可以获得a,str1[1]可以获得b,...

    for i in "abcde":
        print(i, end="")
    
    输出结果如下
    abcde
    
    # enumerate可以让下标和元素对应
    print()
    for i, j in enumerate("abcde"):
        print(i, j)     # 打印:下标i 元素j
    
    输出结果如下
    0 a
    1 b
    2 c
    3 d
    4 e

    三.字符串的切片和倒序

    str1 = "abcdefg"
    # 切片
    print(str1[2:5])        # cde
    print(str1[0:2])        # ab
    print(str1[0:-1])       # abcdef
    print(str1[2:-2])       # cde
    print(str1[:])          # abcdefg
    print(str1[:3])         # abc
    print(str1[3:])         # defg
    print(str1[1:5:2])      # bd
    print(str1[:3:-1])      # gfe
    print(str1[::-2])       # geca
    
    print("================")
    # 倒序
    str2 = "123456789"
    print(str2[::-1])   # 987654321
    
    输出结果如下
    cde
    ab
    abcdef
    cde
    abcdefg
    abc
    defg
    bd
    gfe
    geca
    ================
    987654321

    四.字符串的常见操作

    # 字符串的常见操作
    
    str1 = "abcdefg"
    # 字符串的长度
    str1.__len__()
    len(str1)
    
    # 固定10个字符,不够的补*
    str1.center(10, '*')    # 一共10个字符,str1居中,不够位补"*"
    str1.ljust(10, '*')     # 一共10个字符,str1居左,不够位补"*"
    str1.rjust(10, '*')     # 一共10个字符,str1居右,不够位补"*"
    
    # 判断字符串是否以"xxx"结尾或开头,"xxx"表示任务字符串
    str1.startswith("abc")
    str1.endswith("bbc")
    
    # 判断字符'a'在字符串里共出现了多少次
    str1.count('a')

    其他字符串方法

    abc = "abcdefg"
    
    print(abc.capitalize()) # 整个字符串的首字母大写
    print(abc.title())   # 每个单词的首字母大写
    print(abc.upper())   # 全大写
    print(abc.lower())   # 全小写
    print("HAHAhehe".swapcase()) # 字符串里大小写互换
    
    print(" haha
    ".strip()) # 删除字符串左边和右边的空格或换行 (常用,处理文件的换行符很有用)
    print(" haha
    ".lstrip()) # 删除字符串左边的空格或换行
    print(" haha
    ".rstrip()) # 删除字符串右边的空格或换行
    
    print(abc.find("nice")) # 找出nice在字符串的第1个下标,找不到会返回-1
    print(abc.rfind("e")) # 找出最后一个e字符在字符串的下标,找不到会返回-1
    print(abc.index("nice")) # 与find类似,区别是找不到会有异常(报错)
    print(abc.rindex("e")) # 与rfind类似,区别是找不到会有异常(报错)
    print(abc.isalnum()) # 判断是否为数字字母混合(可以有大写字母,小写字母,数字任意混合)
    print(abc.isalpha()) # 判断是否全为字母(分为纯大写,纯小写,大小写混合三种情况)
    print(abc.isdigit()) # 判断是否为纯数字
    print(abc.islower()) # 判断是否为纯小写字母
    print(abc.isspace()) # 判断是否为全空格
    print(abc.upper().isupper()) # 先把abc字符串全转为大写,再判断是否为全大写字母,结果为Tru

    五.字符串习题

    # 1. 输入一行字符,统计其中有多少个单词,每两个单词之间以空格隔开。
    # 如输入: This is a python program. 输出:There are 5 words in the line.
    
    string = input("pls input a string:")
    
    str_list = string.split(' ')  
    print("There are {} words in the line.".format(str_list.__len__()))
  • 相关阅读:
    ubuntu防火墙设置通过某端口
    pandas入门
    pyplot入门
    numpy教程
    跨域请求 spring boot
    spring boot 启动流程
    代理配置访问
    AOP,拦截器
    spring boot 启动不连接数据库
    Python 3.x 连接数据库(pymysql 方式)
  • 原文地址:https://www.cnblogs.com/golinux/p/10771253.html
Copyright © 2011-2022 走看看