• Python语言第五章之字符串


    字符串

    字符串就是一串字符, 是编程语言中表示文本的数据类型

    1. 字符串表示

    单引号 双引号 多引号 多行字符串, 有空格默认一个空格, 占一个位置

    1. str1 = "hello world"
    2. str3 = '666你好'
    3. str2 = """ what where who """

    2. 获取字符串中的元素

    和列表一样, 通常使用下标获取

    1. str = "hello world"
    2. str[0] # 第一个元素
    3. str[1] # 第二个元素

    3. 遍历字符串

    1. str1 = "hello word"
    2. for s in str1:
    3. print(s)

    4. 字符串常用方法

    4.1 判断

    isalpha( ) : 在至少有一个字符的前提下, 所有字符都是字母组成, 返回True

    isdecimal( ) : 在至少有一个字符的前提下,所有字符都是数字组成, 返回True

    startwith(str) : 判断是否以 str 开头, 返回True

    endwith(str) : 判断是否以 str 结尾, 返回True

    1. str1 = "hello world"
    2. # for s in str1:
    3. # print(s)
    4. # print(str1)
    5. str2 = "helloworld"
    6. str3 = ""
    7. str4 = "123abc"
    8. str5 = "123"
    9. str6 = "1 2456"
    10. """
    11. isalpha() : 至少有一个字符,并且所有字符都是字母则返回True
    12. """
    13. print(str1.isalpha()) # False(空格不是字母)
    14. print(str2.isalpha()) # True
    15. print(str3.isalpha()) # False(不满足至少有一个字符)
    16. print("*" * 20)
    17. """
    18. isdecimal() : 只包含数字则返回
    19. """
    20. print(str3.isdecimal()) # False
    21. print(str4.isdecimal()) # False
    22. print(str5.isdecimal()) # True
    23. print(str6.isdecimal()) # False
    24. print("*" * 20)
    25. """
    26. startwith(str) : 检查是否以str开头,是则返回True
    27. """
    28. print(str1.startswith("h")) # True
    29. print(str1.startswith("1")) # False
    30. print(str1.startswith("")) # True
    31. print("*" * 20)
    32. """
    33. endwith(str) : 检查是否以str结尾, 是则返回True
    34. """
    35. print(str1.endswith("d")) # True
    36. print(str1.endswith("")) # True
    37. print(str1.endswith("0")) # False

    4.2 查找,替换

    查找: 

    find (str, start = 0, end = len(string))  从左往右找

    str : 要查找的字符, start , end 指定范围, 如果找到则返回True

    rfind (str, start = 0, end = len(string))  从右往左找

    str : 要查找的字符, start , end 指定范围, 如果找到则返回True

    替换:

    replace(old_str, new _str, num = string, count(old))
    返回一个新字符串, 把stirng中的old_str替换成new_str,
    如果num指定, 则替换不超过num次

    1. str1 = "hello world"
    2. """
    3. find(str, start = 0, end = len(string))
    4. 检查str 是否包含在string中, 如果start和end指定范围
    5. 则检查是否包含在指定范围内, 如果是返回开始的索引值, 否则返回 -1
    6. """
    7. print(str1.find("hello")) # 0
    8. print(str1.find("world")) # 6
    9. print("*" * 10)
    10. """
    11. rfind(str, start = 0, end = len(string))
    12. 从右边开始找
    13. """
    14. print(str1.rfind("hello")) # 0
    15. print(str1.rfind("world")) # 6
    16. print("*" * 10)
    17. """
    18. replace(old_str, new _str, num = string, count(old))
    19. 返回一个新字符串, 把stirng中的old_str替换成new_str,
    20. 如果num指定, 则替换不超过num次
    21. """
    22. print(str1.replace("hello", "666"))
    23. # 666 world

    4.3 切割, 去空白

    切割:

    split (str="", maxsplit)
    返回列表,以 str 为分隔符拆分 string,
    如果 maxsplit 有指定值,则仅分隔 maxsplit + 1 个子字符串,
    str 默认包含\r, \t, \n 和空格

    去空白:

    strip()
    返回新字符串,截掉 string 左右两边的空白字符(可以指定截掉的字符)

    1. str1 = "hello world"
    2. """
    3. split(str="", maxsplit)
    4. 返回列表,以 str 为分隔符拆分 string,
    5. 如果 maxsplit 有指定值,则仅分隔 maxsplit + 1 个子字符串,
    6. str 默认包含\r, \t, \n 和空格
    7. """
    8. print(str1.split(" "))
    9. # ['hello', 'world']
    10. print(str1.split("o"))
    11. # ['hell', ' w', 'rld']
    12. """
    13. strip()
    14. 返回新字符串,截掉 string 左右两边的空白字符(可以指定截掉的字符)
    15. """
    16. str2 = " a b c "
    17. print(str2)
    18. print(str2.strip())

    5. 字符串案例之用户名密码校验

    ● 用户名和密码格式校验程序
    ● 要求从键盘输入用户名和密码,分别校验格式是否符合规则
      ○ 如果符合,打印用户名合法,密码合法
      ○ 如果不符合,打印出不符合的原因,并提示重新输入
    ● 用户名长度6-20,用户名必须以字母开头
    ● 密码长度至少6位,不能为纯数字,不能有空格
    """
    """
    1.从键盘输入用户名(需要while循环)
    2.长度6-20
    3.必须字母开头
    
    4.输入密码(while循环)
    5.密码长度至少6位
    6.不能为纯数字
    7.不能有空格
    1. while True:
    2. username = input("请输入用户名: ")
    3. # 用户名
    4. if 6 <= len(username) <= 20:
    5. if username[0].isalpha():
    6. print("合法用户名")
    7. break
    8. else:
    9. print("用户名首字符必须是字母")
    10. continue
    11. else:
    12. print("用户名长度不正确")
    13. continue
    14. while True:
    15. password = input("请输入密码: ")
    16. # 密码
    17. if len(password) >= 6:
    18. if not password.isdecimal():
    19. # " " in password
    20. if password.find(" "):
    21. print("合法密码")
    22. break
    23. else:
    24. print("密码不能有空格")
    25. continue
    26. else:
    27. print("密码不能为纯数字")
    28. continue
    29. else:
    30. print("长度不正确")
    31. continue

  • 相关阅读:
    上周热点回顾(8.7-8.13)
    【二】编码器原理与电机转速、角度控制
    Go-Python-Java-C-LeetCode高分解法-第七周合集
    android 平台 c 程序编译
    简化对象和函数写法
    SpringCloud - 项目搭建
    Android Framework | 读懂异常调用栈
    如何通过经纬度坐标获取附近的地址信息?
    natapp内网穿透-将本地运行的程序/服务器通过公网IP供其它人访问
    赋能金融风控加分项的这30个问题,您都搞懂了吗
  • 原文地址:https://blog.csdn.net/d1122d/article/details/138165524