python 学习——字符串

1.字符串内部使用 " 时,可使用 ' 定义字符串

   字符串内部使用 ' 时,可使用 " 定义字符串,一般用 " 定义字符串

2.使用索引获得字符串中指定位置的字符

str = "python string"
print(str[3]) # 提取第4个字符
for str_element in str:   # for 循环遍历字符串
    print(str_element)

3.len(变量或字符串)函数、 .count(”字符串“)方法、.index(”字符串“)方法

str = "python string is  a python string"
print(len(str))  # 返回字符串长度
print(str.count("n"))  # 子字符串在大字符串中出现次数
print(str.index("a"))  # 子字符串出现的位置

4.字符串中判断类型的方法:(判断是否是数字)

txt = "123"
x = txt.isdecimal()   #不能判断小数
x = txt.isdigit()     #不能判断小数,可判断unicode字符串
x = txt.isnumeric()   #不能判断小数,可判断unicode字符串,可判断汉字数字

5.字符串  查找和替换  的方法:

.replace() 方法返回替换后的字符串,但不改变原有字符串
.index() 方法的区别为 .index() 方法报错 .find() 方法返回 -1
str_string = "python string is  a python string"

print(str_string.startswith("python"))
print(str_string.endswith("string"))
print(str_string.find("tr"))  # 返回字符所在位置 与 .index() 方法的区别为 .index() 方法报错 .find() 方法返回 -1
print(str_string.index("bc"))
print(str_string.replace("string", "language"))  # .replace() 方法返回替换后的字符串,但不改变原有字符串

6.字符串对其方法  .center(width)方法  .ljust(width)方法  . rjust(width)  返回用空格填充的width的新字符串

str_poem = ["登鹳雀楼",     # 定义列表
            "白居易",
            "白日依山尽",
            "黄河入海流",
            "欲穷千里目",
            "更上一层楼"]
for pome_element in str_poem:
    print("|%s|" % pome_element.center(10, " "))

7.去除空白字符

 pome_element.lstrip()  # 去除左边空白字符
 pome_element.rstrip()  # 去除右边空白字符
 pome_element.strip()   # 去除两边空白字符
str_poem = ["\t\n登鹳雀楼",     # 定义列表
            "白居易\t\n"
          ]
for pome_element in str_poem:
    print("|%s|" % pome_element.strip().center(10, " "))

8.字符串 拆分 和 拼接  

.split() 方法 可指定分隔符,若不指定分隔符时,以任何空白字符串为分割符,最后返回拆分成的一个列表

str_poem = " \t\n登鹳雀楼 \t\n 白居易\t\n "
print(str_poem.split())

执行结果: 

['登鹳雀楼', '白居易']

string.join(seq) 以   string  为分隔符将  seq  中所以元素合并成一个新的字符串

str_poem = " \t\n登鹳雀楼 \t\n 白居易\t\n "
str_list = str_poem.split()
print(str_list)
print(" ".join(str_list))

结果:

['登鹳雀楼', '白居易']
登鹳雀楼 白居易

9.字符串切片  字符串[开始索引:结束索引:步长]  结束索引不包含在切取的字符内  步长为有间隔的切片

  • 截取2-5位置的字符串
  • str_num = "0123456789"
    print(str_num[2:6])
  • 截取2-末尾的字符串
  • str_num = "0123456789"
    print(str_num[2:])
  • 截取开始-5位置的字符串
  • str_num = "0123456789"
    print(str_num[:5])
  • 截取完整的字符串
  • str_num = "0123456789"
    print(str_num[:])   # 和print(str_num) 相同
  • 从开始位置,每隔一个字符截取字符串
  • str_num = "0123456789"
    print(str_num[::2])  # 步长为 2
  • 从索引 1 开始每隔一个取一个
  • str_num = "0123456789"
    print(str_num[1::2])
  • 截取从 2 到末尾 -1 位置的字符串
  • str_num = "0123456789"
    print(str_num[2:-1])  # -1 指最后一个字符
  • 截取字符串末尾两个字符
  • str_num = "0123456789"
    print(str_num[-2:])
  • 字符串的逆序
    str_num = "0123456789"
    print(str_num[::-1])  # 逆序,步长设为 -1 ,即 从右向左切
    
    print(str_num[-1::-1])   # 从 -1 位置开始,步长为 -1 效果相同

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值