• python字符串详解


    字符串详解

    1. 在python中引号引起来的就是字符串
    2. 字符串是用来存储少量数据

    索引

    索引(下标) 通过索引可以精确的定位到某个元素
    name = "meat"
    meat 每一个字母叫做一个元素
    # 0123       从左向右代表每一个字母
    #-4-3-2-1    从右向左每一个字母
    print(name[-1])  输出 t
    
    name = "今天是个好日子"
            0 1 2 3 4 5 6
            -7-6-5-4-3-2-1
    a = name[0]
    b = name[1]
    print(a+b)    **输出今天**
    
    切片
    name = "todayisgood"
    print(name[0:2])  输出:to
    顾头不顾尾  name[起始位置:终止位置]
    
    print(name[:]) 
    某个位置不指定的时候默认取最后或最前
    print(name[:3])  输出:tod
    print(name[2:5]) 输出:day
    
    print(name[-2:-5])
    
    print(name[-2:-5:-1]) 
    # **[起始位置:终止位置:步长] 步长默认为1**
    
    name = "大黑哥吃大煎饼"
    print(name[1:5])
    输出 黑哥吃大
    print(name[-2:-6:-1])
    输出 煎大吃哥
    print(name[-6:6])
    输出 黑哥吃大煎
    a = name[0]
    输出 大
    b = name[2]
    输出 哥
    c = name[4]
    输出 大
    d = name[6]
    
    print(a+b+c+d)
    
    print(name[::2])
    
    print(name[100:105]) 
    切片的时候起始位置和终止位置都超出的时候不会进行报错
    
    print(name[100])  
     索引的时候索引值超出范围的时候会报错
    
    s = 'Python最NB'
    获取s字符串中前3个内容
    s[0:3]
    获取s字符串中第3个内容
    s[2]
    获取s字符串中后3个内容
    s[-3:]
    获取s字符串中第3个到第8个
    s[2:8]
    获取s字符串中第2个到最后一个
    s[1:]
    获取s字符串中第1,3,5个内容
    s[0:6:2]
    获取s字符串中第2,4,6个内容
    s[1:7:2]
    获取s字符串中所有内容
    s[:]
    获取s字符串中第4个到最后一个,每2个取一个
    s[3::2]
    获取s字符串中倒数第5个到最开始,每3个取一个
    s[-5::-3] 
    

    字符串的方法:

    大小写

    s = "alex"
    s1 = s.upper() #全部大写
    print(s1)
    
    s = "ALEX"
    s1 = s.lower() # 全部小写
    print(s1)
    

    应用场景

    s = input("验证码(AbC5)")
    if s.upper() == "AbC5".upper():
         print("验证码正确")
    else:
         print("验证码错误!")
    

    以什么开头

    s = "ALEX"
    s1 = s.startswith("E",2,6)
    print(s1)
    
    

    以什么结尾

    s = "ALEX"
    s1 = s.endswith("X",3,4)
    print(s1)
    

    统计

    s = "alexdxjbx"
    s1 = s.count("x")
    print(s1)
    输出  3
    

    脱: 字符串头尾两端的空格和换行符以及制表符

    n = input(">>>")
    if n.strip() == "alex":
        print("1")
    else:
        print("2")
        
        
    s = "alexdsba"
    s1 = s.strip("a") # 可以指定内容取脱
    print(s1)
    

    分割:以空格和换行符以及制表符进行分割

    s = "aelxlaaa"
    s1 = s.split("l",maxsplit=1)  # 可以通过指定方式进行切割
    print(s1)
    

    替换:

    s = "大黑哥吃肉夹馍,肉夹馍"
    s1 = s.replace("肉夹馍","大煎饼")
    s1 = s.replace("肉夹馍","大煎饼",1) # 指定替换的次数
    print(s1)
    
    首字母大写
    name = "alex"
    name1 = name.capitalize()
    print(name1)
    输出  Alex
    
    每个单词首字母大写
    name = "jerry home"
    print(name.title())
    输出 Jerry Home
    

    -##### 大小写反转

    name = "JerryHome"
    print(name.swapcase())
    输出 jERRYhOME
    
    居中---填充
    name = "jerry"
    print(name.center(30,"*"))
    输出 ************jerry*************
    
    • 查找 从左向右 只查找一个
    name = "jerry"
    print(name.find("r"))
    输出 2 (代表第一个"r"的下标)
          
    print(name.find("t"))
    输出 -1 (find 查找不存在的返回 -1)
           
    print(name.index("t"))
    index 查找不存在的就报错
    
    拼接
    name = "jerry"
    print("_".join(name))  ***重点
    输出 "j_e_r_r_y"
    
    name = "jerry"
    name1 = "*".join(name)
    print(name1)
    输出 j*e*r*r*y
    
    name = "jerry"
    print("&".join(name))
    输出 :j&e&r&r&y
    
    • 格式化
    1.%s
    2.f
    3.name.format()
    name = "jerry{},{},{}"
    print(name.format(1,2,3))  #按照位置顺序进行填充
    输出 jerry1,2,3
    
    name = "jerry{2},{0},{1}"
    print(name.format("a","b","c"))  #按照索引值进行填充
    输出 jerryc,a,b
    
    name = "jerry{a},{b},{c}"
    print(name.format(a=1,c=2,b=3))  #按照关键字进行填充
    输出 jerry1,3,2
    
    • 字符串 + * 会开辟新的空间
    name = "jerry"
    name1 = "home"
    print(id(name))
    print(id(name1))
    print(id(name + name1))
    输出 2609785706008    #内存地址都不同
         2609817396424
         2609818262256
    
    is 系列:

    s = "12.3"

    print(s.isalnum()) # 判断是不是字母,数字,中文
    print(s.isalpha())  # 判断是不是字母,中文
    print(s.isdigit())  # 判断字符串是不是全都是阿拉伯数字
    print(s.isdecimal())  # 判断是否是十进制
    
  • 相关阅读:
    ptunnel-简易使用
    socat-简易使用
    ncat-相关参数用法
    通过iodine简单实现dns隧道技术
    HTB-靶机-Safe
    HTB-靶机-Rope
    【mysql子查询&组合查询 05】
    【mysql 库表操作 07】
    【mysql插入&修改&删除 06】
    【mysql 连接查询 04】
  • 原文地址:https://www.cnblogs.com/lvtaohome/p/11215954.html
Copyright © 2020-2023  润新知