[Python公开课]零基础玩转Python基础篇----第四节:Python的字符串

186 阅读7分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

📢📢📢📣📣📣 🌻🌻🌻Hello,大家好我叫是Dream呀,一个有趣的Python博主,多多关照😜😜😜 🏅🏅🏅Python领域优质创作者,大二在读,欢迎大家找我合作学习(文末有VX 想进学习交流群or学习资料 欢迎+++) 💕 入门须知:这片乐园从不缺乏天才,努力才是你的最终入场券!🚀🚀🚀 💓最后,愿我们都能在看不到的地方闪闪发光,一起加油进步🍺🍺🍺 🍉🍉🍉“一万次悲伤,依然会有Dream,我一直在最温暖的地方等你”,唱的就是我!哈哈哈~🌈🌈🌈 🌟🌟🌟✨✨✨

前言: 📢📢📢【Python公开课】系列课程是针对Python入门&进阶打造的一全套课程,如果你喜欢的话就抓紧收藏订阅起来吧~💘💘💘 【报团取暖】🆘🆘🆘 🍋🍋🍋如果对学习没有自制力或者没有一起学习交流的动力,欢迎私信,我会拉你进学习交流群,我们一起交流学习,报团打卡 群内更有众多福利等你来解锁哟,赶快加入我们吧!🍻🍻🍻

📣📣📣新鲜事,早知道:👻👻👻

1️⃣ 学习目标----提前知💞💞💞

☀️☀️☀️一个崇高的目标,只要不渝地追求,就会成为壮举!

  1. 了解字符串操作符的使用
  2. 掌握字符串的输出和输入
  3. 掌握字符串的常见操作
  4. 了解转义字符的使用

2️⃣ 学习任务----我能行🍻🍻🍻

🏅🏅🏅穷且益坚,不坠青云之志!

📣 01 字符串介绍

什么是字符串

字符串是一种表示文本数据的类型。 使用单引号: ‘a’ 、'123' 使用双引号: “a”、"123" 使用三引号: """ Hello """

转义字符

看下面的代码:

>>>'let's go! go'
  File "<input>", line 1
    'let's go! go'
         ^
SyntaxError: invalid syntax

对于单引号或者双引号这些特殊的符号,我们可以对他们进行转义。例如,对字符串中的单引号进行转义:

>>>'let\'s go! go'
"let's go! go"

在这里插入图片描述

📣 02 字符串的输出和输入

字符串的输出

比如有以下代码:

print(“我今年10岁”)
print(“我今年11岁”)
print ("我今年12岁")

大家试想一下,上述代码多次输出"我今年xx岁",是否有一种简化程序的方式呢? 当然有。可以通过字符串格式化来完成。

下面是字符串的格式化输出:

name = '小明‘
age = 5
print("大家好,我叫%s ,我今年%d岁了"%(name,age))

常见的格式化符号: 在这里插入图片描述

字符串的输入

Python3提供了 input() 函数从标准输入读取一行文本,默认的标准输入是键盘。input可以接收一个Python表达式作为输入,并将运算结果返回。

username=input("请输入用户名")print(username)

📣 03 访问字符串中的值

字符串的存储方式

字符串中的每个字符都对应一个下标,下标编号是从0开始的。 在这里插入图片描述

什么是切片

切片的语法格式如下所示: 在这里插入图片描述 切片选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身)

使用切片截取字符串

假设有字符串 name=“abcdef”,则:

name[0:3]
name[3:5]
name[1:-1] 
name[2:])
name[::-2]

输出:

abc de bcde cdef fdb

📣 04 字符串内建函数

字符串内建函数

1、find函数: 检测字符串是否包括子字符串 str.find(string, beg=0, end=len(str))

参数如下:

  • str -- 指定检索的字符串。
  • beg -- 开始索引,默认为0。
  • end -- 结束索引,默认为字符串的长度。
  • 返回索引,如果找不到,结果是-1

2、index函数: 检测字符串是否包括子字符串 str.index(string, beg=0, end=len(str))

参数如下:

  • str -- 指定检索的字符串。
  • beg -- 开始索引,默认为0。
  • end -- 结束索引,默认为字符串的长度。
  • 返回索引,如果找不到,报错

3、replace函数: 将旧字符串替换为新字符串 str.replace(old, new[, max])

参数如下:

  • old -- 将被替换的字符串。
  • new -- 新字符串,用于替换old字符串。
  • max -- 可选字符串,替换不超过max次

4、count函数: 统计字符串中某个字符的个数

str.count(sub, start= 0, end=len(str))

参数如下:

  • sub -- 搜索的子字符串
  • start -- 字符串开始搜索的位置
  • end -- 字符串中结束搜索的位置

5、splite函数: 通过指定分隔符对字符串进行切片 str.split(string="", num=str.count(string))

参数如下:

  • str -- 分隔符。py2默认为所有空字符,py3不能为空。
  • num -- 分割次数 生成列表

6、capitalize: 第一个字符大写,其他字符小写 str.capitalize()

7、title: 所有单词首字母大写,其余字母消息 str.title()

8、startswith: 检查字符串是否以指定子串开头 str.startswith(string, beg=0,end=len(str))

参数如下:

  • str -- 检测的字符串。
  • strbeg -- 可选参数用于设置字符串检测的起始位置。
  • strend --可选参数用于设置字符串检测的结束位置。

9、 endswith: 检查字符串是否以制定子串结尾 str.endswith(suffix[, start[, end]])

参数如下:

  • suffix -- 该参数可以是一个字符串或者是一个元素。
  • start -- 字符串中的开始位置。
  • end -- 字符串中的结束位置。

10、upper: 将小写字母转为大写字母 str.upper()

mystr = 'hello world itheima and itheimaApp'
newStr = mystr.upper()
# 结果为:HELLO WORLD ITHEIMA AND ITHEIMAAPP

11、ljust: 左对齐,使用空格填充至指定长度的新字符串 str.ljust(width[, fillchar])

参数如下:

  • width -- 指定字符串长度。
  • fillchar -- 填充字符,默认为空格。

12、rjust: 右对齐,使用空格填充至指定长度的新字符串 str.rjust(width[, fillchar])

参数如下:

  • width -- 指定字符串长度。
  • fillchar -- 填充字符,默认为空格。

13、center: 返回一个指定的宽度 width 居中的字符串 str.center(width[, fillchar])

参数如下:

  • width -- 字符串的总宽度。
  • fillchar -- 填充字符。

14、rstrip: 截掉字符串右边的空格或指定字符 str.rstrip([chars])

参数如下:

  • chars –制定删除的字符。

15、strip: 截掉字符串左右边的空格或指定字符

str.strip([chars])

参数如下:

  • chars --移除字符串头尾指定的字符。

📣 05 字符串运算符

字符串运算符

在这里插入图片描述 and: 在这里插入图片描述

3️⃣ 本章小结----知难易🏆🏆🏆

😊😊😊人生是跋涉,也是旅行;是等待,也是重逢;是探险,也是寻宝;是眼泪,也是歌声!

本章首先对字符串进行了讲解,介绍了什么是字符串以及对特殊字符的转义;接着讲解了字符串的格式化输入和输出、字符串的访问;最后讲解了字符串的内建函数以及字符串运算符。通过本章的学习,希望读者能结合案例多加练习,熟练掌握字符串操作的相关函数。

4️⃣ 小试牛刀----习题讲解🌈🌈🌈

🏃 🏃 🏃本期问题

✍第一题

1.打印九九乘法表:

for i in range(1,10):
	for j in range(i,10):
		print(i,'x',j,'=',i*j,"\n")

✍第二题

2.求1-2+3-4+5 ... 99的所有数的和:

方法1:笨办法

sum1 =0
sum2 = 0
for i in range(1,100,2):
    sum1 += i
for j in range(2,100,2):
    sum2 +=j
sum3 = sum1 -sum2
print(sum3)

方法2:正常程序猿的方法

sum=0
for i in range(0,100):
    if i%2==0:
        sum-=i
    else:
        sum+=i
print(sum)

✍第三题

3.输入一行字符, 分别统计出其中英文字母、空格、数字和其它字符的个数。

s = input("请输入一行字符串:")
letters = 0
space = 0
digit = 0
other = 0
print(len(s))
for i in s:
    #判断是否为字母
    if i.isalpha():
        letters += 1
    #判断是否为空格
    elif i.isspace():
        space += 1
    #判断是否为数字
    elif i.isdigit():
        digit += 1
    else:
        other += 1
print ('字母数量为%d, 空格数量为%d, 数字数量为%d, 其他数量为%d' % (letters, space, digit, other))

💕💕💕 好啦,这就是今天要分享给大家的全部内容了,我们下期再见!✨ ✨ ✨ 🍻🍻🍻如果你喜欢的话,就不要吝惜你的一键三连了~ 在这里插入图片描述 在这里插入图片描述