技术好文:StudingDay3

简介: 技术好文:StudingDay3

12.3


内容简介:1、列表、元组操作2、字符串操作3、字典操作4、集合操作5、文件操作6、字符编码与转码7、内置函数


一、列表、元祖操作


列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储、修改等操作。


①创建一个列表


只要把逗号分隔的不同的数据项使用方括号括起来即可。代码如下


list1 = 【'physics', 'chemistry', 1997, 2000】;


list2 = 【1, 2, 3, 4 】;


list3 = 【"a", "b", "c", "d"】;


②访问列表中的值


使用下标索引来访问列表中的值,同样你也可以使用方括号的形式截取字符,如下所示:


list1 = 【'physics', 'chemistry', 1997, 2000】;


list2 = 【1, 2, 3, 4, 5, 6, 7 】;


print ("list1【0】: ", list1【0】)


1)切片


print ("list2【1:5】: ", list2【1:5】)


#起始位置包括,结束位置不包括(顾头不顾尾)


输出如下:


list1【0】: physics


list2【1:5】: 【2, 3, 4, 5】


取最后一个:print(list1【-1】)


取最后两个值:print(list1【-3:】)


2)修改


list【2】=”PE.”


③更新列表


你可以对列表的数据项进行修改或更新,你也可以使用extend()方法来添加列表项,可以用append()来添加一个对象到列表尾部,如下所示:


list.extend(【1,2,3】)


【1,2,1,2,3】 # 输出列表list


list.append(【1,2,3】)


【1,2,【1,2,3】】 # 输出列表


① 删除列表中的元素


del list【2】 #删除list中下标为三的元素


② Python列表操作的函数和方法


列表操作包含以下函数:


1、cmp(list1, list2):比较两个列表的元素


2、len(list):列表元素个数


3、max(list):返回列表元素最大值


4、min(list):返回列表元素最小值


5、list(seq):将元组转换为列表


列表操作包含以下方法:


1、list.append(obj):在列表末尾添加新的对象


2、list.count(obj):统计某个元素在列表中出现的次数


3、list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)


4、list.index(obj):从列表中找出某个值第一个匹配项的索引位置


5、list.insert(index, obj):将对象插入列表,index是下标


6、list.pop(obj=list【-1】):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值


7、list.remove(obj):移除列表中某个值的第一个匹配项


8、list.reverse():反向列表中元素


9、list.sort(【func】):对原列表进行排序


二、字符串操作


特性:不可修改


name = "my name is hobby"


name2 = "my name is {name} and I am {year} years old!"


print(name)


print("首字母大写:" + name.capitalize()) # 首字符大写


print(name.endswith("y")) # 判断字符串是否以y结尾


print(name.expandtabs(tabsize=10))


print(name.find("name")) # 返回字符串的下标


print(name【name.find("name"):】) # 字符串也可以切片


print(name2.format(name='hobby', year=23))


print(name2.format_map({'name': 'hobby', 'year': '23'}))


print(name.isalnum()) # 判断是否是阿拉伯数字和英文字符


print(name.isalpha()) # 判断是否是纯英文字符


print('25'.isdecimal()) # 判断是否是十进制


print('1a'.isdigit()) # 判断是否是一个整数


print('a1a'.isidentifier()) # 判断是不是一个合法的标识符(变量名)


print('33A'.isspace()) # 判断是不是一个空格


print('My Name Is '.istitle()) # 判断是否是开头


print('My Name Is'.isupper()) # 判断是否是大写


print('' '+'.join(【'1', '2', '3', '4'】))


print(name.ljust(20, ''))


print(name.rjust(20, ''))


print(name.center(20, "")) # 打印30个字符,剩下不够的用补充


print('Hobby'.lower()) # 把大写变小写


print('Hobby'.upper()) # 把小写变大写


print('\nHobby\n'.strip()) # 去掉两端换行


p = str.maketrans("abcdefy", '123456@') # 用后面的123456代替adbcef


print("Hobby".translate(p))


print('Hobby'.replace('b', 'l', 1)) # 把b换成l,只换一个


print("Hobby".rfind('b')) # 找到最右边的b的下标


print("Hobby,zg".split(',')) # 把字符串根据,分割


print("1+2\n+3+4".splitlines()) #


print("Hobby".swapcase()) # 把大写变小写,小写换大写


print("hobby li".title()) # 变成开头。


print("hobby".zfill(20)) # 自动填充0


三、字典操作


字典特性:①dict是无序的②key必须是唯一的


语法:


info = {


‘stu1101’:”hobby Li”,


‘stu1102’:”zhigu he”


}


name = "my name is hobby"


name2 = "my name is {name} and I am {year} years old!"


print(name)


print("首字母大写:" + name.capitalize()) # 首字符大写


print(name.endswith("y")) # 判断字符串是否以y结尾


print(name.expandtabs(tabsize=10))


print(name.find("name")) # 返回字符串的下标


print(name【name.find("name"):】) # 字符串也可以切片


print(name2.format(name='hobby', year=23))


print(name2.format_map({'name': 'hobby', 'year': '23'}))


print(name.isalnum()) # 判断是否是阿拉伯数字和英文字符


print(name.isalpha()) # 判断是否是纯英文字符


print('25'.isdecimal()) # 判断是否是十进制


print('1a'.isdigit()) # 判断是否是一个整数


print('a1a'.isidentifier()) # 判断是不是一个合法的标识符(变量名)


print('33A'.isspace()) # 判断是不是一个空格


print('My Name Is '.istitle()) # 判断是否是开头


print('My Name Is'.isupper()) # 判断是否是大写


print('' '+'.join(【'1', '2', '3', '4'】))


print(name.ljust(20, ''))


print(name.rjust(20, ''))


print(name.center(20, "")) # 打印30个字符,剩下不够的用补充


print('Hobby'.lower()) # 把大写变小写


print('Hobby'.upper()) # 把小写变大写


print('\nHobby\n'.strip()) # 去掉两端换行


p = str.maketrans("abcdefy", '123456@') # 用后面的123456代替adbcef


print("Hobby".translate(p))


print('Hobby'.replace('b', 'l', 1)) # 把b换成l,只换一个


print("Hobby".rfind('b')) # 找到最右边的b的下标


print("Hobby,zg".split(',')) # 把字符串根据,分割


print("1+2\n+3+4".splitlines(//代码效果参考:http://hnjlyzjd.com/xl/wz_25066.html

)) #

print("Hobby".swapcase()) # 把大写变小写,小写换大写


print("hobby li".title()) # 变成开头。


print("hobby".zfill(20)) # 自动填充0


print(info.setdefault('stu1108', '铃铛')) # 字典里找stu1108键值,没有就新建,返回新建的value,有就返回stu1108的值


info.update(b) # b是一个列表,若info和b中有相同的key,则info相同的key的value用b中对应的value代替,若没有,则添加b进info中


print(info.items()) # 把字典转化成列表


字典循环


info = {


'01': 'jio',


'02': 'alx'


}


for i in info: # 高效,用索引通过key就找出value


print(i, info【i】)


for k, v in info.items(): # 先把字典变成列表,没上面那个高效


print(k, v)

相关文章
|
12天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!
|
10天前
|
存储 人工智能 搜索推荐
终身学习型智能体
当前人工智能前沿研究的一个重要方向:构建能够自主学习、调用工具、积累经验的小型智能体(Agent)。 我们可以称这种系统为“终身学习型智能体”或“自适应认知代理”。它的设计理念就是: 不靠庞大的内置知识取胜,而是依靠高效的推理能力 + 动态获取知识的能力 + 经验积累机制。
370 133
|
10天前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
本文讲解 Prompt 基本概念与 10 个优化技巧,结合学术分析 AI 应用的需求分析、设计方案,介绍 Spring AI 中 ChatClient 及 Advisors 的使用。
453 131
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
|
4天前
|
存储 安全 前端开发
如何将加密和解密函数应用到实际项目中?
如何将加密和解密函数应用到实际项目中?
209 138
|
10天前
|
人工智能 Java API
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
本文介绍AI大模型的核心概念、分类及开发者学习路径,重点讲解如何选择与接入大模型。项目基于Spring Boot,使用阿里云灵积模型(Qwen-Plus),对比SDK、HTTP、Spring AI和LangChain4j四种接入方式,助力开发者高效构建AI应用。
418 122
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
|
4天前
|
存储 JSON 安全
加密和解密函数的具体实现代码
加密和解密函数的具体实现代码
218 136
|
21天前
|
机器学习/深度学习 人工智能 前端开发
通义DeepResearch全面开源!同步分享可落地的高阶Agent构建方法论
通义研究团队开源发布通义 DeepResearch —— 首个在性能上可与 OpenAI DeepResearch 相媲美、并在多项权威基准测试中取得领先表现的全开源 Web Agent。
1520 87
|
22天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1365 8