python入门之字符串

目录

一、字符串的定义

二、字符串的常用操作

 三、字符串的切片

一、字符串的定义

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

在python中可以使用一对双引号"或者一对单引号'定义一个字符串

虽然可以使用\"或者\‘做字符串的转义,但是在实际开发中:如果字符串内部需要使用",可以使用'定义字符串;如果字符串内部需要使用',可以使用"定义字符串

可以使用索引获取一个字符串中指定位置的字符,索引技术从0开始

也可以使用for循环遍历字符串中每一个字符

大多数编程语言都是用"来定义字符串

str1 = "Hello Python"
str2 = '我的外号是"大西瓜"'

print(str2)
print(str1[6])

for char in str2:
    
    print(char)

二、字符串的常用操作

在ipython3中定义一个字符串,例如:hello_str = ""

输入hello_str.按下TAB键,ipython会提示字符串能够使用的方法如下:

提示:正是因为python内置提供的方法足够多,才使得在开发时,能够针对字符串进行更加灵活的操作!应对更多的开发需求! 

hello_str = "hello hello"

# 1.统计字符串长度
print(len(hello_str))

# 2.统计某一个小(子)字符串出现的次数
print(hello_str.count("llo"))
print(hello_str.count("abc"))

# 3.某一个子字符串出现的位置
print(hello_str.index("llo"))
# 注意:如果使用index方法传递的子字符串不存在,程序会报错!
print(hello_str.index("abc"))

1.判断类型-9

# 1. 判断空白字符
# \t:制表符 \n:换行 \r:回车
space_str = "  \t\n\r"

print(space_str.isspace())

# 2.判断字符串中是否只包含数字
# 1> 都不能判断小数
# num_str = "1.1"
# 2> unicode 字符串
# num_str = "⑴"
# num_str = "\u00b2"
# 3> 中文数字
num_str = "千千千"

print(num_str)
print(num_str.isdecimal())
print(num_str.isdigit())
print(num_str.isnumeric())

 2.查找和替换-7

hello_str = "hello world"

# 1.判断是否以指定字符串开始
print(hello_str.startswith("hello"))

# 2.判断是否以指定字符串结束
print(hello_str.endswith("world"))

# 3.查找指定字符串
# index同样可以查找指定的字符串在大字符串中的索引
print(hello_str.find("llo"))
# index如果指定的字符串不存在,会报错
# find如果指定的字符串不存在,会返回-1
print(hello_str.find("abc"))

# 4.替换字符串
# replace方法执行完成之后,会返回一个新的字符串
# 注意:不会修改原有字符串的内容
print(hello_str.replace("world","python"))

print(hello_str)

 3.大小写转换-5

 

 4.文本对齐-3

# 假设:以下内容是从网络上抓取的
# 要求:顺序并且居中对齐输出以下内容
poem = ["登鹳雀楼",
        "王之涣",
        "白日依山尽",
        "黄河入海流",
        "欲穷千里目",
        "更上一层楼"]

for poem_str in poem:

    print("|%s|" % poem_str.center(10," "))

for poem_str1 in poem:

    print("|%s|" % poem_str1.rjust(10," "))

for poem_str2 in poem:

    print("|%s|" % poem_str2.ljust(10," "))

 5.去除空白字符-3

# 假设:以下内容是从网络上抓取的
# 要求:顺序并且居中对齐输出以下内容
poem = ["\t\n登鹳雀楼",
        "王之涣",
        "白日依山尽\t\n",
        "黄河入海流",
        "欲穷千里目",
        "更上一层楼"]

for poem_str in poem:
    # 先使用strip方法去除字符串中的空白字符
    # 再使用center方法居中显示文本
    print("|%s|" % poem_str.strip().center(10," "))

6.拆分和连接-5

# 假设:以下内容是从网络上抓取的
# 要求:
# 1.将字符串中的空白字符全部去掉
# 2.再使用" "作为分隔符,拼接成一个整齐的字符串

poem_str = "登鹳雀楼\t 王之涣 \t 白日依山尽 \t \n 黄河入海流 \t\t 欲穷千里目 \t\t\n更上一层楼"

print(poem_str)

# 1.拆分字符串
poem_list = poem_str.split()
print(poem_list)

# 2.合并字符串
result = " ".join(poem_list)
print(result)

 三、字符串的切片

切片方法适用于字符串、列表、元组

切片使用索引值来限定范围,从一个大的字符串中切出小的字符串

列表和元组都是有序的集合,都能够通过索引值获取到对应的数据

字典是一个无序的集合,是使用键值对保存数据

字符串[开始索引:结束索引:步长]
num_str = "0123456789"

# 1.截取从2~5位置的字符串
print(num_str[2:6])

# 2.截取从2~末尾的字符串
print(num_str[2:])

# 3.截取从开始~5位置的字符串
# print(num_str[:6])
print(num_str[0:6])

# 4.截取完整的字符串
print(num_str[:])

# 5.从开始位置,每隔一个字符截取字符串
print(num_str[::2])

# 6.从索引1开始,每隔一个取一个
print(num_str[1::2])

# 7.截取从2~末尾-1的字符串
print(num_str[2:-1])

# 8.截取字符串末尾两个字符
print(num_str[-2:])

# 9.字符串的逆序(面试题)
# print(num_str[-1::-1])
print(num_str[::-1])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值