> 文档中心 > Python零基础入门篇 - 11 - Python中的字符串类型及应用

Python零基础入门篇 - 11 - Python中的字符串类型及应用


前言
✌ 作者简介:渴望力量的哈士奇,大家可以叫我 🐶哈士奇🐶 。(我真的养了一只哈士奇)
📑 个人主页:渴望力量的哈士奇主页
📫 如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步👀
🔥 如果感觉博主的文章还不错的话,还请不吝👍关注、点赞、收藏三连支持👍一下博主哦
💬 人生格言:优于别人,并不高贵,真正的高贵应该是优于过去的自己。💬

📕系列专栏::
               👍 Python全栈系列 - [更新中]    ➡️➡️➡️ 【 本文在该系列】
               👋 网安之路系列
​                       🍋 网安之路踩坑篇
​                       🍋 网安知识扫盲篇
​                       🍋 Vulhub 漏洞复现篇
​                       🍋 Shell脚本编程篇
​                       🍋 Web攻防篇  ➡️➡️➡️ 2021年9月3日停止更新,转战先知等安全社区
​                       🍋 渗透工具使用集锦  ➡️➡️➡️ 2021年9月3日停止更新,转战先知等安全社区
​                ⭐️ 点点点工程师系列
​                       🍹 测试神器 - Charles 篇
​                       🍹 测试神器 - Fiddler 篇
​                       🍹 测试神器 - Jmeter 篇
​                       🍹 自动化 - RobotFrameWork 系列
​                       🍹 自动化 - 基于 JAVA 实现的WEB端UI自动化
                       🍹 自动化 - 基于 MonkeyRunner 实现的APP端UI自动化
​                🤗 2019年之前学习Python留下的乱七八糟系列

                                                                                  🎉🎉欢迎持续关注🎉🎉

Python零基础入门篇 - 11 - Python中的字符串类型及应用

文章目录

    • 初识字符串类型
      • 什么是字符串
      • 字符串的内置函数与定义方法
      • 字符串的重要思想
      • Python的内置函数 id
      • Python的内置函数 len
    • 字符串类型的小练习
    • 字符串的应用
      • 内置成员运算符 in 的使用
      • 内置函数 max
      • 内置函数 min
      • 字符串的叠加

初识字符串类型

其实在前文的学习过程当中,我们已经接触字符串很久了,但是一直都没有给它证明,现在我们就来学习一下字符串类型

什么是字符串

  • 用单引号 ’ ’ 或者双引号 " " 包裹的所有信息就是字符串
  • 字符串中可以包含任意字符:如字母、数字、符号等,且没有先后顺序

字符串的内置函数与定义方法

  • 在 python 中,使用 str 来代表字符串,并且通过该函数可以定义字符串

看一个小case

safe = str("健康的体温是36.5度左右")name = "neo"message = "neo 的生日是2000年1月1日"info = "neo 祝大家新年快乐"print(safe)print(name)print(message)print(info)

字符串的重要思想

字符串不可改变

前文我们有介绍过,当我们赋值了一个变量之后,内存就会给该变量安排一个内存空间。有人就会产生疑问,之前我们说过变量的值是可以改变的啊,为什么说 字符串 是不可改变的呢?

这里我们需要明确一下,以 name = "neo" 为例 ,当我们尝试将其修改为 name = "lily" 后,实际上这里我们改变的是变量的值,并不是 neo 的内容。所以当 name = "lily" 后不是对原来的字符串 "neo"进行了修改,而是 name 这个变量名又从内存地址里找到了 “lily” ,这个内容,原来的 neo 仍然在内存里没有任何改变(也无法改变),这就是字符串不可改变的特性。

下面我们借用内置函数 id 来验证一下这个场景

Python的内置函数 id

  • 返回变量的内存地址
  • 使用方法 数字地址 = id(变量)

结合下方的小场景看一下

name = "neo"print(id(name))# 140446576059632name = "lily"print(id(name))# 140446576060656

这里我们再思考一下,如果再次将 name 修改为 “neo” ,name他的内存地址id是否和原来的一样呢? 答案是不一样的,因为当我们不再使用

name = “neo” 这个内存地址的时候,该地址会被释放掉。即使我们再次将 “neo” 赋值给 变量 “name”,实际上他的内存地址已经变化了。

这里有个细节上的错误,请跳到评论区查看 " user-from-future " 大佬的评论。

Python的内置函数 len

  • len 的意义是返回字符串的长度
  • 需要注意的是无法返回数字类型的长度,因为数字类型没有长度
  • len 的用法, 返回值 = len (字符串)

示例如下

length = len(python)print(length)# >>>6

字符串类型的小练习

接下来我们做一个关于 字符串类型的小练习

需求如下:

1.模拟输入用户名和密码

2.打印输出用户名和密码

3.打印输出密码的长度和类型

username = input("请输入用户名:")password = input("请输入密码:")if __name__ == '__main__':    print("用户名为:" + username)    print("密码为:" + password)    print("密码长度为:" + str(len(password)))    print("密码的类型为:" + str(type(password)))

输出结果如下图:



字符串的应用

内置成员运算符 in 的使用

说到成员运算符就不得不提到成员,什么是成员?其实在字符串里,每一个字符都是一个成员,我们也可以把他叫做一个元素。成员运算符是用来判断你的数据中是否有你想要的成员。

通过关键字 in 检查字符串中是否包含指定字符串,示例如下:

>>> 'P' in 'Python'True>>> 'P' not in 'Python'False
  • 在第 1 行,检测字符串 'P’在 字符串 ‘Python’ 中
  • 在第 3 行,检测字符串 ‘P’ 不在 字符串 ‘Python’ 中

内置函数 max

  • max 函数可以返回当前数据中最大的成员
  • max (数据) - > 成员值 print(max('今天是12月7日!')) ->
  • 实际上我们的字符时存在大小关系的
  • 中文符合 > 字母 > 数字 > 英文符号( 在Python3中,字符串是使用 Unicode 进行编码的,所以也是按照 Unicode 来比较大小的)

内置函数 min

  • min 函数可以返回当前数据中最大的成员
  • min (数据) - > 成员值 print(min('今天是12月7日!')) -> !
  • 中文符合 > 字母 > 数字 > 英文符号

字符串的叠加

  • 字符串的拼接使用 + 这个符号

  • 字符串不是数字不能做减法和乘除法

使用运算符 + 连接两个字符串,示例如下:

>>> 'Hello' + 'World'>>> 'HelloWorld'>>> 'Hello' + ' ' + 'World'>>> 'Hello World'
  • 在第 1 行,使用运算符 + 连接两个字符串
  • 在第 3 行,使用运算符 + 连接多个字符串

现在我们再看一个关于字符串拼接的小练习

info_01 = "Python是一门优美的编程语言"result_01 = "Python" in info_01print(result_01)# >>>Trueresult_02 = "编程" not in info_01print(result_02)# >>>Falseprint(max(info_01))# >>>门print(min(info_01))# >>>Pinfo_02 = ",但是JAVA也不差!"print(info_01 + info_02)# >>>Python是一门优美的编程语言,但是JAVA也不差!