【第五课 】Python基本数据类型(二)


— 来源:【人民日报】

系列文章目录

第一课 Python的环境搭建
第二课 Python基础知识准备
第三课 Python运算符
第四课 Python基本数据类型(一)



前言

以下为个人理解,如有错误,还希望各位大佬批评指正

在学习这篇文章之前,我们需要先清楚几个概念。方便后续阅读。
【内存地址、索引(也称下标)、元素、可迭代对象、不可变类型)】
我们可以有以下的类比。内存地址类比成房间身份证号,索引类比成房间门牌号,元素类比成住在房间里的人。可迭代对象是指每个元素一个内存地址,不可变类型指元素不可修改



一、字符串

字符串的格式化输出

  • eval() 方法:主动识别字符串中的类型
print('1 + 2')
print(eval('1 + 2'))
# 输出结果如下
1 + 2
3
  • %s(字符串占位符)、%d(整型占位符)、%f(浮点型占位符)
    注意,引号‘’与百分号%之间无符号
a = 'hello'
b = 12
c = 3.4
print('字符为%s, 数值为%d, 浮点数为%f' % (a, b, c))
# 当有多个变量时,%()括号内传入变量名
# 当只有一个变量时,%后直接连接变量名
# 输出结果如下
字符为hello, 数值为12, 浮点数为3.400000
  • ‘’.format() 方法
    注意,引号‘’与format之间需要英文状态下的句号连接
a = 'hello'
b = 12
c = 3.4
print('字符为{}, 数值为{}, 浮点数为{}'.format(a, b, c))
# format()方法可以输出任意类型
# 输出结果如下
字符为hello, 数值为12, 浮点数为3.4

字符串方法

以下是对字符串的操作,字符串是不可变类型

s = ‘hello world’
下面以 s 代表字符串对象

  • s.find(’ ') 查找(找不到元素返回 -1)
  • s.rfind(’ ') 从右边开始寻找
  • s.index(’ ') 查找(找不到元素报错)
  • s.count(’ ') 计算指定元素个数
  • s.replace(‘old’, ‘new’) 用新元素替换旧元素
  • s.strip(‘’) 去掉字符两边的空格
  • s.upper() 将全部字符转换成大写
  • s.lower() 将全部字符转换成小写
  • s.startswith(’ ') 判断是否以某个字符开始
  • s.endswith(’ ’ ) 判断是否以某个字符结束
  • ‘~’.join(s) 在 s 中加入 ~ 符号
  • s.split(’ ') 指定以某个元素分割字符,返回列表

字符串中的一个字符称为一个元素

二、列表基本操作

列表可以类比上述的房间,列表是可迭代对象,可变类型,可以存放任意类型

下述以 li 代表列表对象

  • 创建列表

直接以中括号创建: li = [‘hello’, ‘world’]

  • 关键字创建

li = list(‘12345’)
注意:此处要传入可迭代对象才可以创建

  • 原封不动添加

li.append([1,2,3]) # 将列表原样添加到新列表中

  • 拆开后添加

li.extend([1,2,3]) # 将列表拆分后添加到新列表中
注意:此处要传入可迭代对象才可添加

  • 指定位置添加

li.insert(num, ’ ‘) # num为指定的下标,’ '内传入需要插入的元素

  • del 方法

    • 删除单个元素

    • del li [num] # num 为 li 列表的下标索引

    • 删除整列表

    • del li
      删除整个列表,列表不存在

  • clear() 方法

    • li.clear()
      清空整个列表,列表仍然存在

  • remove() 方法

    • li.remove() # 括号内传入要删除的元素

li [num] = new
先通过索引 num 取出该元素,再使用 new 重新赋值

  • 查单个值

li[num]
num 为下标索引

  • 查范围

li [ start : end : step ]
start 为开始索引,end为结束索引(无法取到), step为步长

三、列表的其他补充

  • 列表相加

列表之间相加是两个列表之间拼接

a = ['hello']
b = ['python']
print(a + b)
# 输出结果如下
['hello', 'python']

列表内置函数

  • len() 方法
# 计算变量长度
a = 'hello'
print(len(a))
b = ['hello', 'world']
print(len(b))
# 输出结果
5
2
  • max()方法和min()方法
a = 'hello'
print(max(a))
b = ['hello', 'world']
print(min(b))
# 输出结果
o
hello
# 同类型之间比较,如果是字符类型,则使用ASCII编码进行比较
  • reverse() 方法
#  列表倒序输出
a = [1, 4, 2, 5, 7, 3, 6]
a.reverse()  # 此处需要先调用该方法,再输出列表
print(a)
# 输出结果
[6, 3, 7, 5, 2, 4, 1]
  • sort() 方法
# 有序排列
a = [1, 4, 2, 5, 7, 3, 6]
a.sort() # 此处需要先调用该方法,再输出列表 
print(a)
# 输出结果
[1, 2, 3, 4, 5, 6, 7]

如果想降序输出结果呢

a = [1, 4, 2, 5, 7, 3, 6]
a.sort(reverse=True) # 先将列表升序排列,再倒序输出
print(a)
# 输出结果
[7, 6, 5, 4, 3, 2, 1]


总结

以上就是今天要分享的内容,主要讲解了字符串和列表的使用。也有一些容易出错的地方需要大家注意:

  • 方法的调用
    • 在括号外调用
    • 在括号内调用
    • 先调用方法,再输出
  • 各方法的返回类型以及各方法的作用
  • 各方法括号内需要传入的参数
  • 8
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值