• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

python字符串和常用数据结构知识总结

python 搞代码 4年前 (2022-01-09) 19次浏览 已收录 0个评论

使用字符串

第二次世界大战促使了现代电子计算机的诞生,当初的想法很简单,就是用计算机来计算导弹的弹道,因此在计算机刚刚诞生的那个年代,计算机处理的信息主要是数值,而世界上的第一台电子计算机ENIAC每秒钟能够完成约5000次浮点运算。随着时间的推移,虽然对数值运算仍然是计算机日常工作中最为重要的事情之一,但是今天的计算机处理得更多的数据都是以文本信息的方式存在的,而Python表示文本信息的方式我们在很早以前就说过了,那就是字符串类型。所谓字符串,就是由零个或多个字符组成的有限序列,一般记为$${\displaystyle本文来源gao.dai.ma.com搞@代*码(网$ s=a_{1}a_{2}\dots a_{n}(0\leq n \leq \infty)}$$。

我们可以通过下面的代码来了解字符串的使用。

def main():
 str1 = 'hello, world!'
 # 通过len函数计算字符串的长度
 print(len(str1)) # 13
 # 获得字符串首字母大写的拷贝
 print(str1.capitalize()) # Hello, world!
 # 获得字符串变大写后的拷贝
 print(str1.upper()) # HELLO, WORLD!
 # 从字符串中查找子串所在位置
 print(str1.find('or')) # 8
 print(str1.find('shit')) # -1
 # 与find类似但找不到子串时会引发异常
 # print(str1.index('or'))
 # print(str1.index('shit'))
 # 检查字符串是否以指定的字符串开头
 print(str1.startswith('He')) # False
 print(str1.startswith('hel')) # True
 # 检查字符串是否以指定的字符串结尾
 print(str1.endswith('!')) # True
 # 将字符串以指定的宽度居中并在两侧填充指定的字符
 print(str1.center(50, '*'))
 # 将字符串以指定的宽度靠右放置左侧填充指定的字符
 print(str1.rjust(50, ' '))
 str2 = 'abc123456'
 # 从字符串中取出指定位置的字符(下标运算)
 print(str2[2]) # c
 # 字符串切片(从指定的开始索引到指定的结束索引)
 print(str2[2:5]) # c12
 print(str2[2:]) # c123456
 print(str2[2::2]) # c246
 print(str2[::2]) # ac246
 print(str2[::-1]) # 654321cba
 print(str2[-3:-1]) # 45
 # 检查字符串是否由数字构成
 print(str2.isdigit()) # False
 # 检查字符串是否以字母构成
 print(str2.isalpha()) # False
 # 检查字符串是否以数字和字母构成
 print(str2.isalnum()) # True
 str3 = ' [email protected] '
 print(str3)
 # 获得字符串修剪左右两侧空格的拷贝
 print(str3.strip())


if __name__ == '__main__':
 main()

除了字符串,Python还内置了多种类型的数据结构,如果要在程序中保存和操作数据,绝大多数时候可以利用现有的数据结构来实现,最常用的包括列表、元组、集合和字典。

使用列表

下面的代码演示了如何定义列表、使用下标访问列表元素以及添加和删除元素的操作。

def main():
 list1 = [1, 3, 5, 7, 100]
 print(list1)
 list2 = ['hello'] * 5
 print(list2)
 # 计算列表长度(元素个数)
 print(len(list1))
 # 下标(索引)运算
 print(list1[0])
 print(list1[4])
 # print(list1[5]) # IndexError: list index out of range
 print(list1[-1])
 print(list1[-3])
 list1[2] = 300
 print(list1)
 # 添加元素
 list1.append(200)
 list1.insert(1, 400)
 list1 += [1000, 2000]
 print(list1)
 print(len(list1))
 # 删除元素
 list1.remove(3)
 if 1234 in list1:
  list1.remove(1234)
 del list1[0]
 print(list1)
 # 清空列表元素
 list1.clear()
 print(list1)


if __name__ == '__main__':
 main()

和字符串一样,列表也可以做切片操作,通过切片操作我们可以实现对列表的复制或者将列表中的一部分取出来创建出新的列表,代码如下所示。

def main():
 fruits = ['grape', 'apple', 'strawberry', 'waxberry']
	fruits += ['pitaya', 'pear', 'mango']
	# 循环遍历列表元素
 for fruit in fruits:
  print(fruit.title(), end=' ')
 print()
 # 列表切片
 fruits2 = fruits[1:4]
 print(fruits2)
 # fruit3 = fruits # 没有复制列表只创建了新的引用
 # 可以通过完整切片操作来复制列表
 fruits3 = fruits[:]
 print(fruits3)
 fruits4 = fruits[-3:-1]
 print(fruits4)
 # 可以通过反向切片操作来获得倒转后的列表的拷贝
 fruits5 = fruits[::-1]
 print(fruits5)


if __name__ == '__main__':
 main()

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:python字符串和常用数据结构知识总结
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址