Python-Day2(字符串/列表/元组)

Task2(2day)

1 String(字符串)

1.1 基本操作

​ Python中的字符串中用
字符串连接符:+
字符串复制:* (后面紧跟的数字为复制的次数)
​ 例如:
​ 字符串str = ‘Runooob’;

​ 输出结果:


1.2 读取方式

读取方式:字符串的使用语法与数组类似,采用下标的方式。

变量[头下标:尾下标]

​ 索引值正向0为开始值,反向以-1为开始值。


1.3 反斜杠

反斜杠“ \

  • 转义特殊字符;

  • 续行符,表示下一行是上一行的延续。
    例如:
    输出结果:

    也可以使用“”“…“”“或者‘’‘…’‘’跨越多行。
    例如:
    输出结果:

注意:
​ 1、Python没有单独的字符类型,一个字符就是长度为1的字符串;
​ 2、与C字符串不同的是,Python字符出不能被改变。向一个索引位置赋值,比如test[0]=‘m’会导致错误;


1.4 格式输出


​ 常用格式说明符:


1.5 字符串常用方法


​ 示例:

​ join方法:连接列表中连个字符串;前面是连接符——空格;

​ 编解码:


2 List(列表)

​ 序列是Python中最基本的数据结构。序列都可以进行的操作包括索引、切片、乘、检查成员
​ Python有6个序列的内置类型,最常见的是列表和元组。列表是Python中使用最频繁的数据类型。

2.1 标识符

​ 列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不同,可以是数字、字符串,以及列表(所谓嵌套)。
​ 列表写在方括号[]之间、用逗号间隔的元素列表。
​ 列表也可以索引和截取,列表被截取后返回一个包含所需元素的新列表。
​ 列表截取语法格式:

变量[头下标:尾下标]

​ 索引值正向0为开始值,反向以**-1**为开始值。
注意:
​ 截取时,尾下标是不包括在所截的列表中。


2.2 基本操作

列表连接运算符:+
列表重复操作:*
​ 例如:

​ 输出结果:

更新列表
​ 可以对列表的数据项进行修改或更新,也可以使用append()方法来添加列表项。
​ append()方法用于在列尾添加新对象,append()是浅拷贝。

list.append(obj)

​ 例如:

​ 输出结果:

删除列表元素
​ 使用del语句来删除列表的元素。例如:

​ 输出结果:

注意:

​ 1、与字符串不一样的是,列表中的元素是可以改变的。
​ 例如:

​ 输出结果:

​ 2、Python列表截取可以接收第三个参数,参数作用是截取的步长。


2.3 Python列表脚本操作符
Python表达式结果描述
len([1, 2, 3])3长度
[1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]组合
[‘Hi!’] * 4[‘Hi!’, ‘Hi!’, ‘Hi!’, ‘Hi!’]重复
3 in [1, 2, 3]True元素是否存在于列表中
for x in [1, 2, 3]: print(x, end=" ")1 2 3迭代

2.4 Python列表拼接工作
squares = [1, 4, 9, 16, 25]
squares += [36, 49, 64, 81, 100]

​ 输出结果:

squares=[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

2.5 嵌套列表

​ 使用嵌套列表,即在列表里创建其它列表。例如:

a = ['a', 'b', 'c']
n = [1, 2, 3]
x = [a, n]
>>> x
[['a', 'b', 'c'], [1, 2, 3]]
>>> x[0]
['a', 'b', 'c']
>>> x[0][1]
'b'

​ 嵌套列表的索引和二位数组操作类似。


2.6 实例

如果第三个参数为负数表示逆向读取;
​ 实例:翻转字符串

def reverseWords(input): 
      
    # 通过空格将字符串分隔符,把各个单词分隔为列表
    inputWords = input.split(" ") 
  
    # 翻转字符串
    # 假设列表 list = [1,2,3,4],  
    # list[0]=1, list[1]=2 ,而 -1 表示最后一个元素 list[-1]=4 ( 与 list[3]=4 一样) 
    # inputWords[-1::-1] 有三个参数
    # 第一个参数 -1 表示最后一个元素
    # 第二个参数为空,表示移动到列表末尾
    # 第三个参数为步长,-1 表示逆向
    inputWords=inputWords[-1::-1] 
  
    # 重新组合字符串
    output = ' '.join(inputWords) 
      
    return output 
  
if __name__ == "__main__": 
    input = 'I like runoob'
    rw = reverseWords(input) 
    print(rw)

​ 输出结果:

runoob like I

2.7 Python列表函数和方法

​ Python列表函数:

序号函数
1len(list)
列表元素个数
2max(list)
返回列表元素最大值
3min(list)
返回列表元素最小值
4list(seq)
将元组转换为列表

​ Python列表方法:

序号方法
1list.append(obj) 在列表末尾添加新的对象
2list.count(obj) 统计某个元素在列表中出现的次数
3list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
4list.index(obj) 从列表中找出某个值第一个匹配项的索引位置
5list.insert(index, obj) 将对象插入列表
6list.pop([index=-1])(https://www.runoob.com/python3/python3-att-list-pop.html)移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
7list.remove(obj) 移除列表中某个值的第一个匹配项
8list.reverse() 反向列表中元素
9list.sort( key=None, reverse=False) 对原列表进行排序
10list.clear() 清空列表
11list.copy() 复制列表

常用实现方法:
1、pop()函数
​ 用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。
​ 语法:

list.pop([index=-1])

​ 【index】 – 可选参数,要移除列表元素的索引值,不能超过列表总长度,默认为 index=-1,删除最后一个列表值。
2、copy()函数
​ copy()函数用于复制列表,
​ 语法:

list.copy()
list1 = ['Google', 'Runoob', 'Taobao', 'Baidu']
list2 = list1.copy()
print ("list2 列表: ", list2)

​ 输出结果:

list2 列表:  ['Google', 'Runoob', 'Taobao', 'Baidu']

3、例如:对评委打分进行处理,去掉最高和最低份,排序等。

jScores=[9,9,8.5,10,7,6,5,8,9,10,8.3]	#评委打分
aScore=9	#观众打分
jScores.sort()	#对打分进行排序
print(jScores)	#注意:此时的jScores是已经排好序的

​ 或者,使用sorted()函数对列表进行排序,,但是这种方法不会改变列表本身的顺序,需要将其赋值给另外一个变量

jScores=[9,9,8.5,10,7,6,5,8,9,10,8.3]
aScore=9
x=sorted(jScores)
print(x)
print(jScores)

​ 输出结果:

​ 去掉最高和最低分,添加观众打分:

jScores.pop()
print(jScores)
jScores.pop(0)
print(jScores)
jScores.append(aScore)		#添加观众评分
print(jScores)

​ 注意:上面是只有一个元素,使用append函数可以,但是当添加多个元素时,使用extend函数。
​ 添加多个元素使用append函,输出结果:

​ 添加多个元素使用extend函数,输出结果:

4、参数的作用
​ 通过参数实现逆序排列:

jScores.sort(reverse=True)	#参数设置
print(jScores)

​ 另外,还可以使字符串按长度排列:

​ 注意:这里key是python中已经定义好的。


2.8 列表解析

​ 动态创建列表,简单灵活有用


3 Tuple(元组)

​ 元组写在小括号 () 里,元素之间用逗号隔开。元组中的元素类型也可以不相同。
​ 虽然元组的元素不可改变,但它可以包含可变的对象,比如list列表。
​ 构造包含0个或1个元素的元组比较特殊,所以有一些额外的语法规则:

tup1 = ()    # 空元组
tup2 = (20,) # 一个元素,需要在元素后添加逗号,否则括号会被当作运算符使用
3.1 访问元组

​ 元组与列表和字符串类似,使用下标索引访问元组中的值。


3.2 修改元组

​ 元组中的元素值是不允许修改的,但可以对元组进行连接组合(”+“)。


3.3 删除元组

​ 元组中的元素值是不允许删除的,但可以使用del语句来删除整个元组。
​ 输出变量会有异常信息:


3.4 元组内置函数

Python元组包含内置函数:

序号方法及描述实例
1len(tuple) 计算元组元素个数。>>> tuple1 = ('Google', 'Runoob', 'Taobao') >>> len(tuple1) 3 >>>
2max(tuple) 返回元组中元素最大值。>>> tuple2 = ('5', '4', '8') >>> max(tuple2) '8' >>>
3min(tuple) 返回元组中元素最小值。>>> tuple2 = ('5', '4', '8') >>> min(tuple2) '4' >>>
4tuple(seq) 将列表转换为元组。>>> list1= ['Google', 'Taobao', 'Runoob', 'Baidu'] >>> tuple1=tuple(list1) >>> tuple1 ('Google', 'Taobao', 'Runoob', 'Baidu')

3.5 元组的作用

​ 元组用在什么地方?

  • 在映射类型中当作键使用
  • 函数的特殊类型参数
  • 作为函数的特殊返回值

    可变长位置参数(元组)

    星号,好像有收集参数的功能。*
    元组作为函数的特殊返回值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值