python笔记第四节 序列类型初始

Posted 摆烂阳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python笔记第四节 序列类型初始相关的知识,希望对你有一定的参考价值。

💕💕💕 博主昵称:摆烂阳💕💕💕
🥰点击跳转到博主主页
👩‍💻博主研究方向:web渗透测试 、python编程
📃博主寄语:希望本篇文章能给大家带来帮助,有不足的地方,希望友友们给予指导

————————————————

人生苦短,我学python


一、序列简介

数值类型:可以表示数值

int 整型 = 整数

float 浮点型 = 小数

bool 布尔型 = 用于判断/也可以作为数值进行运算

序列类型:存储多个数据的一种数据类型

str 字符串 -> 数字 字母,特殊符号,中文等数据

list 列表

tuple 元组

序列是指可以存放多个数值的连续内存空间,这些值是按照一定顺序排列,可以通过每个值所在位置的下标访问它

二、列表和元组

列表是python一种数据类型,list是一个有序可以装各种数据类型的容器。

list的创建:

直接使用[]括起来,各个元素使用英文逗号分隔开

name_list = ['摆烂阳', '从不吃晚饭',  True, 123, 1.1]

print(name_list)

range() 函数 : 可以根据给定的参数来生成整数序列, 返回的迭代器

迭代器是需要转换成列表才能查看

具体语法:

range(start,stop) # start 和 stop 代表2个参数
# start 开始
# stop 结束
# 注意:包头不包尾,从start开始到stop结束 [start,stop)
#  start <= x < stop , x ∈ z

# 生成 1~1000 的列表
n = list(range(1, 1001))  # 由于不包尾,所以1001取不到,只会取到1000
print(n) 
0
# 生成 0 ~ 100 之间的偶数



range(start,stop,step=1)
# start 开始
# stop 结束
# step 步长
# 生成 0 ~ 100 之间的偶数
li = list(range(0, 104, 2))
print(li)

# 输出 1 ~ 100 中 7的倍数
# 第一步 确定头尾
# 第二步 跨步
li2 = list(range(0, 101, 7))
print(li2)


# 凡是有 固定的 差值的 整数,都可以使用range生成


如果希望生成降序的整数序列,步长可以改为负数
# 10 ~ 1 列表
li = list(range(10, 0,-1))  # 10头   0尾
print(li)

# 生成列表 8 6 4 2 0
s = list(range(8,0,-2))
print(s)

元组跟列表基本一样,都可以用来存储多个数据,最大的区别是列表可以修改,而元组是不行,元组最大特色是不能修改

元组的创建

() 英文括号括起来,每个元素用逗号隔开

111 = (1,2,3,4,"摆烂阳")
print(111)
print(type(111))

配合range()函数,再用tuple类型转换

t = tuple(range(1,101))
print(t)

三、 序列类型基本操作

序列类型:list,tuple,str

1、下标

1.1正向下标

在序列类型中每一个元素都会存在一个下标,下标是从左往右默认从0开始。可以通过下标去提取元素

语法格式:

# 提取方式:序列[下标]

# 注意这里是 []


只有函数的后面才跟()


s = "Python"  # 下标 = 第几个 - 1

print(s[3])
print(s[4])
print(s[5])
print(s[6]) # 访问元素时不可以超过最大下标,超过则报错


嵌套列表的提取,比方说提取 摆
lis = [2, 4, 6, ["摆","烂"], 8]
mj = lis[3]  #  mj = ["摆","烂"]
print(mj[0])

1.2 反向下标

反向下标和正向下表不同的地方在于反向下标是从右至左开始,右边第一位的值为-1

s = "python3"
# 此时提取 t
# 正向 2  反向 -5
print(s[2]) # print(s[-5])

2、切片

在Python中, 切片 (slice) 是对序列型对象 (如 list, string, tuple)的一种高级索引方法。 普通索引只取出序列中 一个下标 对应的元素,而切片取出序列中 一个范围 对应的元素,这里的范围不是狭义上的连续片段。

如果想截取序列中的一段序列,就可以使用切片

例如:

L = ["稿子", "斧头", "铁锹", "AK47", "98K", "锄头"]
# 提取出 枪械武器类别 到新列表中
# 切片语法  序列[start:stop:step]

# 和range有点相似,同样是包头不包尾

L = ["稿子", "斧头", "铁锹", "AK47", "98K", "锄头"]
print(L[3:5])
s = "hello world!"

# hello
# 1.先确定h的下标  0
# 2.再确定o的下标  4  # 不包尾 + 1
print(s[0:5])

# hlo
# 1.先确定头的下标 0
# 2.再确定尾的下标 4+1
# 3.在确定步长 2
print(s[0:5:2])


s = "hello world!"

print(s[:])  # 头部参数如果没写,默认是从头开始切
                # 尾部参数如果没写,默认切到底

    
s = "hello world!"
# 反转序列类型
print(s[::-1]) # 如果说步长是负数的话,头就是右边,尾就是左边

3、成员运算符

in : 属于

not in : 不属于

运算符描述实例
in如果在指定的序列中找到值返回 True,否则返回 False。x 在 y 序列中 , 如果 x 在 y 序列能找到,则返回 True。
not in如果在指定的序列中没有找到值返回 True,否则返回 False。x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。
s = "Hello My friend"

print("H" in s)

print(" " in s)  # 字符串中 空格也算做一个字符

print("h" in s)  # False

print("ll" in s)  # True
print("fr " in s) 
print("Hlo" in s) # 不行 得连续

4、序列运算

序列类型 只能做 加法 和 乘法

序列的相加 就是 两边 拼接

序列的相乘 就是 重复和自己拼接

s1 = "摆烂阳"
s2 = "从不吃晚饭"

list1 = ["摆烂阳"]
list2 = ["从不吃晚饭"]

print(s1 + s2)  # 直接拼接
print(list1 + list2)  # 直接合并

print(list1 * 5) # ['摆烂阳', '摆烂阳', '摆烂阳', '摆烂阳', '摆烂阳']

5、序列常用内置函数

什么是内置函数

python官方提供好的功能,可以直接拿来使用,比如print,input

函数功能
len()计算序列的长度,即返回序列中包含多少个元素。
max()找出序列中的最大元素。
min()找出序列中的最小元素。
sum()计算元素和。
sorted()对元素进行排序。

学内置函数主要学这2点

1.函数的功能
2.函数的参数

5.1 len()

len(seq): 计算序列的长度,即返回序列中包含多少个元素

seq:序列

s = "hello,world"
print(len(s))

li = [1,2,3,4,"摆烂阳"]
print(len(li))

5.2 max()和min()

max(seq) 找出序列中的最大元素。

min(seq) 找出序列中的最小元素。

seq:序列
li = [2, 4, 0, 6, 3, 5]
print(max(li))
print(min(li))

5.3 sum()

sum(seq): 求序列元素的和

seq:序列
    
li = [2, 4, 0, 6, 3, 5]
print(sum(li))

5.4sorted()

sorted(seq) 对元素进行排序。

升序 sorted(seq)

降序 sorted(seq,reverse=True)

li = [2, 4, 0, 6, 3, 5]


print(sorted(li))
print(sorted(li,reverse=))

本章小结

本文是本人以前笔记,博主主页跳转链接如果有哪里不对的话欢迎各位大佬指出问题,本人也是初学python,希望可以和各位朋友一起学习进步。

点击跳转到博主python专栏:
如果有喜欢web安全的朋友,请在web渗透专栏中进行查看,点击跳转到博主web渗透专栏

以上是关于python笔记第四节 序列类型初始的主要内容,如果未能解决你的问题,请参考以下文章

python学习笔记第四节(字符编码+文本操作+函数)

python第四节函数

python预习-第四节

python 基础

第四节——数组

python学习第四节 迭代器 生成器 面向过程编程