学习大数据DAY29 python基础语法2
目录
调试---debug
tuple(元组)
set(集合)
dict(字典)
转换
推导式
上机练习 3
函数
参数
不定长参数
值传递与引用传递
局部和全局变量
上机练习 4
调试---debug
tuple(元组)
set(集合)
dict(字典)
转换
推导式
上机练习 3
# 1. 已知列表 li= [11,22,100,33,44,66,55,77,88,99,90] ,将所有大于
66 的值保存至字典的
# 第一个 key 对应的列表中,将小于 66 的值保存至第二个 key 对应的列表中。
# 输出结果{'key1':[100,77,88,99,90],'key2':[11,22,33,44,55]}
# li= [11,22,100,33,44,66,55,77,88,99,90]
# liBiggerThen66=[]
# liLowerThen66=[]
# for i in li:
#
if i<66:
#
liLowerThen66.append(i)
#
elif i>66:
#
liBiggerThen66.append(i)
# di={'key1':liBiggerThen66,'key2':liLowerThen66}
# print(di)
# 2. list_three=["good", "nice", "see you", "bye"],根据列表利用
推导式存放指定列表中
# 字符串的长度如下
# {'good':4, 'nice':4, 'see you':7, 'bye':3}
# list_three=["good", "nice", "see you", "bye"]
# print({i:len(i) for i in list_three})
# 3. 已知数据 t1=((1,100),(2,30),(3,80),(4,234))
# 推导成列表[100,30,80,234]
# 推导成字典{1: 100, 2: 30, 3: 80, 4: 234}
# 推导成列表[{'name': 1, 'value': 100}, {'name': 2, 'value': 30},
{'name': 3, 'value': 80},
# {'name': 4, 'value': 234}]
# t1=((1,100),(2,30),(3,80),(4,234))
# print([i[-1] for i in t1])
# print({i[0]:i[-1] for i in t1})# print([{'name':i[0],'value':i[-1]} for i in t1])
# 4. 已知如下数据
# d1 = {
# '192.168.1.1':{'cpu':'0.23','内存':'16','硬盘':'500'},
# '192.168.1.2':{'cpu':'3.22','内存':'64','硬盘':'700'},
# '192.168.1.3':{'cpu':'1.99','内存':'32','硬盘':'800'}
# }
# 处理显示成如下格式输出:
# 192.168.1.1: cpu 0.23 内存 16 硬盘 500
# 192.168.1.2: cpu 3.22 内存 64 硬盘 700
# 192.168.1.3: cpu 1.99 内存 32 硬盘 800
# d1 = {
# '192.168.1.1':{'cpu':'0.23','内存':'16','硬盘':'500'},
# '192.168.1.2':{'cpu':'3.22','内存':'64','硬盘':'700'},
# '192.168.1.3':{'cpu':'1.99','内存':'32','硬盘':'800'}
# }
# for i in d1:
#
print(f"{i}:",end=" ")
#
for j in d1[i]:
#
print(f"{j} {d1[i][j]}",end=" ")
#
print()
# 5. 有字符串"k: 1|k1:2|k2:3 |k3 :4" 处理成字典 { 'k': 1, 'k1': 2,
'k3': 4}
# str1="k: 1|k1:2|k2:3 |k3 :4"
# list1=":".join(str1.split("|")).split(":")
# print({list1[i]:int(list1[i+1]) for i in range(0,len(list1),2)
if i!=4})
# 6. 已知如下列表 students,在列表中保存了 6 个学生的信息,根据要求完
成下面的题目
# students = [
# {'name': '小花', 'age': 19, 'score': 90, 'gender': '女',
'tel':'15300022839'},
# {'name': '明明', 'age': 20, 'score': 40, 'gender': '男',
'tel':'15300022838'},
# {'name': '华仔', 'age': 18, 'score': 100, 'gender': '女',
'tel':'15300022839'},
# {'name': '静静', 'age': 16, 'score': 90, 'gender': '不明',
'tel':'15300022428'},
# {'name': 'Tom', 'age': 17, 'score': 59, 'gender': '不明',
'tel':'15300022839'},
# {'name': 'Bob', 'age': 18, 'score': 90, 'gender': '男',
'tel':'15300022839'}
# ]
# students = [# {'name': '小花', 'age': 19, 'score': 90, 'gender': '女',
'tel':'15300022839'},
# {'name': '明明', 'age': 20, 'score': 40, 'gender': '男',
'tel':'15300022838'},
# {'name': '华仔', 'age': 18, 'score': 100, 'gender': '女',
'tel':'15300022839'},
# {'name': '静静', 'age': 16, 'score': 90, 'gender': '不明',
'tel':'15300022428'},
# {'name': 'Tom', 'age': 17, 'score': 59, 'gender': '不明',
'tel':'15300022839'},
# {'name': 'Bob', 'age': 18, 'score': 90, 'gender': '男',
'tel':'15300022839'}
# ]
# 打印学生分数列表
# print([i['score'] for i in students])
# # # 打印手机尾号是 8 的学生的名字列表
# print([i['name'] for i in students if i['tel'][-1]=='8'])
# # 打印最高分和对应的学生的名字列表
# print([f"{j['name']} {j['score']}" for j in students if
j['score']==max([i['score'] for i in students])])
# 打印不及格的同学的所有信息列表,效果如下:
# print([j for i in students if i['score']<60 for j in i.values()])
函数
参数
不定长参数
值传递与引用传递
局部和全局变量
上机练习 4
# 1. 写函数,输入一个数字,传递到函数中,输出从 1 到此数
# def onetonum(number):
#
if number>1:
#
for i in range(1,number+1):
#
print(i)
#
else:
#
for i in range(1,number-1,-1):
#
print(i)
# if __name__=="__main__":
#
number=int(input("输入一个数字:"))
#
onetonum(number)
# 2. 写函数,接收两个数字参数,返回较大的那个数字
# def twonummax(n1,n2):
#
if not n1.isdigit() or not n2.isdigit():
#
print("有字符不是数字!")#
else:
#
if float(n1)>=float(n2):
#
print(n1,end=" ")
#
elif float(n1)<float(n2):
#
print(n2,end=" ")
#
print("这个大!")
# if __name__=="__main__":
#
print("输入两个数,比比看谁大!")
#
n1=input()
#
n2=input()
#
twonummax(n1,n2)
# 3. 写函数,输入账号和密码,传递到函数中,如果账号等于 admin,密码等于
123456 则输
# 出登录成功,否则输出登录失败
# def Admin_account(admin,password):
#
if admin=="admin" and password=="123456":
#
print("登录成功!")
#
else:
#
print("登录失败!")
# if __name__=="__main__":
#
print("输入账号密码:")
#
user=input("账号:")
#
password=input("密码:")
#
Admin_account(user,password)
# 4. 写函数,接收 n 个数字,返回这些数字的和、最小值、最大值
# def receiver(*n):
#
print(f"""它们的和:{sum(n)}
# 它们的最小值:{min(n)}
# 它们的最大值:{max(n)}""")
# if __name__=="__main__":
#
receiver(9,10,43,23)
#
receiver(10,80,40,20)
# 5. 写函数,接收一个不定长参数,为多个字符串,判断每个字符串的长度是
否为大于
# 5,如:isLen5("hello","worldd","test") 返回[False,True,False]
# 注:使用推导式
# def EstimateLen(*n):
#
return [len(i)>5 for i in n]
# if __name__=="__main__":
#
print(EstimateLen("hello","worldd","test"))
# 6. 写函数,接收一个字符串和一个不定长字符串,返回第一个字符串在不定
长字符串# 中出现几次,如:getNum("ab","b","a","ab","abc","ab","aabb","cd")
返回 2
# def getNum(str,*n):
#
count=0
#
for i in n:
#
if i==str:
#
count+=1
#
return count
# if __name__=="__main__":
#
print(getNum("ab","b","a","ab","abc","ab","aabb","cd"))
#
print(getNum("b","b","a","ab","abc","ab","aabb","cd"))
#
print(getNum("a","b","a","ab","abc","ab","aabb","cd"))
# 7. 写函数,传入一个不定长字典,检查传入字典的每一个 value 的长度,如
果大于 2,
# 那么仅仅保留前两个长度的内容,并将新内容作为列表返回
# 如:
getValue2(name1="jerry",name2="tom",name3="lily",name4="hh",na
me5="s")
# 返回['je','to','li','hh','s']
# def getValue2(**dict):
#
list1=[]
#
for i in dict.values():
#
if len(i)>2:
#
list1.append(i[:2])
#
else:
#
list1.append(i)
#
return list1
# if __name__=="__main__":
#
print(getValue2(name1="jerry",name2="tom",name3="lily",na
me4="hh",name5="s"))
# 8. 写函数,传入两个列表参数,返回一个扑克牌列表,里面有 52 项,每一项都
是一个 tuple
# list1=["红心","梅花","方块","黑桃"]
# list2=["A","2","3","4","5","6","7","8","9","10","j","q","k"]
# 结果输出如:[('红心','A'),('梅花','A')…('黑桃','k')]
# 注:使用推导式
# def joker(n,m):
#
return [(i,j) for i in m for j in n ]
# if __name__=="__main__":
#
list1=["红心","梅花","方块","黑桃"]
#
list2=["A","2","3","4","5","6","7","8","9","10","j","q","
k"]
#
print(joker(list1,list2))
相关文章:
学习大数据DAY29 python基础语法2
目录 调试---debug tuple(元组) set(集合) dict(字典) 转换 推导式 上机练习 3 函数 参数 不定长参数 值传递与引用传递 局部和全局变量 上机练习 4 调试---debug 1. 先设置断点 2. 点击调试…...

自动化测试常用函数(Java方向)
目录 一、元素的定位 1.1 cssSelector 1.2 xpath 1.2.1 获取HTML页面所有的节点 1.2.2 获取HTML页面指定的节点 1.2.3 获取⼀个节点中的直接子节点 1.2.4 获取⼀个节点的父节点 1.2.5 实现节点属性的匹配 1.2.6 使用指定索引的方式获取对应的节点内容 二、操作测试对…...

申瓯通信设备有限公司在线录音管理系统(复现过程)
漏洞简介 申瓯通信设备有限公司在线录音管理系统 index.php接口处存在任意文件读取漏洞,恶意攻击者可能利用该漏洞读取服务器上的敏感文件,例如客户记录、财务数据或源代码,导致数据泄露 一.复现过程 fofa搜索语句:title"在线录音管…...

【C++进阶学习】第十一弹——C++11(上)——右值引用和移动语义
前言: 前面我们已经将C的重点语法讲的大差不差了,但是在C11版本之后,又出来了很多新的语法,其中有一些作用还是非常大的,今天我们就先来学习其中一个很重要的点——右值引用以及它所扩展的移动定义 目录 一、左值引用和…...
JavaScript 监听 localStorage 的变化
使用 JavaScript 监听 localStorage 的变化 在Web开发中,localStorage是一种非常常用的本地存储机制。它允许我们在浏览器中存储键值对数据,即使用户关闭了浏览器或刷新页面,数据也不会丢失。但是,有时我们需要实时监控 localStorage 的变化,以便能够及时做出响应。在本文中,我…...
Java 中 HashMap 和 Hashtable 的联系
目录 相同 不同 1. 继承的父类不同 2. 线程安全性不同 3. 包含的 contains 方法不同 4. toString方法不同 5. 是否允许null值不同 6. 计算hash值的方式不同 7. 计算索引位置的方法不同 8. 初始化容量不同 9. 扩容方式不同 10. 内部存储策略不同(此处讨论…...
Web3 开发教程
引言 Web3 是指第三代互联网,其核心特征之一是去中心化。通过区块链技术和智能合约,Web3 应用程序(dApps)能够在无需中心化服务器的情况下运行。本文将引导你完成一个简单的 Web3 应用程序的开发过程,包括环境搭建、智…...

傻瓜式PHP-Webshell免杀学习手册,零基础小白也能看懂
项目描述 一、PHP相关资料 PHP官方手册: https://www.php.net/manual/zh/ PHP函数参考: https://www.php.net/manual/zh/funcref.php 菜鸟教程: https://www.runoob.com/php/php-tutorial.html w3school: https://www.w3school…...

第十九次(安装nginx代理tomcat)
回顾 1.安装nodejs---jdk一样你的软件运行环境 yum -y list install|grep epel $? yum -y install nodejs #版本号 node -v 2.下载对应的nodejs软件npm yum -y install npm npm -v npm set config ...淘宝镜像 3.安装vue/cli command line interface 命令行接口 npm ins…...

小红书0510笔试-选择题
Cache-Control:这是一个用于定义缓存行为的头部字段,它可以设定多个值来控制缓存的各个方面,如“public”、“private”、“no-cache”、“max-age”等。虽然Cache-Control的max-age指令可以指定缓存项的有效期,但它并不直接标识资…...

3.Java面试题之AQS
1. 写在前面 AQS(AbstractQueuedSynchronizer)是Java并发包(java.util.concurrent)中的一个抽象类,用于实现同步器(如锁、信号量、栅栏等)。AQS提供了一种基于FIFO队列的机制来管理线程的竞争和…...

redis的集群(高可用)
redis集群的三种模式: 主从复制 奇数 三台 一主两从 哨兵模式 3 一主两从 cluster集群 六台 主从复制:和mysql的主从复制类似,主可以写,写入主的数据通过RDB方式把数据同步到从服务器,从不能更新到主,也…...
随机森林的算法
1、随机森林算法简介 随机森林算法(Random Forests)是LeoBreiman于2001年提出的,它是一种通过重采样办法从原始训练样本集中有放回地重复随机抽取若干个样本生成多个决策树,样本的最终预测值由这些决策树的结果投票决定的一种有监督集成学习模型。 其核…...

3.1、数据结构-线性表
数据结构 数据结构线性结构线性表顺序存储和链式存储区别单链表的插入和删除练习题 栈和队列练习题 串(了解) 数据结构 数据结构该章节非常重要,上午每年都会考10-12分选择题下午一个大题 什么叫数据结构?我们首先来理解一下什…...

记一次对HTB:Carpediem的渗透测试
信息收集 端口扫描 通过nmap对靶机端口进行探测,发现存在22和80端口。 访问web页面。发现是一个静态页面,没有可利用的部分。 目录扫描 子域枚举 通过对域名进行fuzz子域名,发现存在portal一级域名。 将它加入/etc/hosts,访问之…...

MATH2 数据集:AI辅助生成高挑战性的数学题目
随着大型语言模型(LLMs)在理解和生成复杂数学内容方面的能力显著提高,通过利用所有公开数据以及相当一部分私有数据,已经取得了进展。然而,高质量、多样化和具有挑战性的数学问题来源正在逐渐枯竭。即使是寻找新的评估…...

加密货币“蓄势待发”!美国松口降息!九月开始连续降息8次?2025年利率目标3.25-3.5%?
今晨,美国联准会(Fed)结束FOMC会议,一如市场预期第八度冻涨利率在5.25%-5.5%。不过主席鲍威尔(Jerome Powell)在会后的记者会访出鸽派讯号,暗示9月降息脚步将近。这一消息令金融市场顿时沸腾,美股全面大涨&…...
Vue.js 3.x 必修课|005|代码规范与 ESLint 入门
欢迎关注公众号:CodeFit 创作不易,如果你觉得这篇文章对您有帮助,请不要忘了 点赞、分享 和 关注,为我的 持续创作 提供 动力! 1. 代码规范的重要性 在现代软件开发中,代码规范扮演着至关重要的角色。 特别是在团队协作的环境中,统一的代码风格可以大大提高工作效率和…...

【Linux】动态库|静态库|创建使用|动态库加载过程
目录 编辑 前言 静态库 为什么要使用库(形成原理 ) 生成一个静态库 静态库的使用 动态库 生成一个动态库 动态库的使用 解决方法 动态库加载过程 编辑 前言 库(Library)是一种方式,可以将代码打包成可重用的格式(站…...

WebSocket 协议与 HTTP 协议、定时轮询技术、长轮询技术
目录 1 为什么需要 WebSocket?2 WebSocket2.1 采用 TCP 全双工2.2 建立 WebSocket 连接2.3 WebSocket 帧 3 WebSocket 解决的问题3.1 HTTP 存在的问题3.2 Ajax 轮询存在的问题3.3 长轮询存在的问题3.4 WebSocket 的改进 参考资料: 为什么有 h…...
[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?
🧠 智能合约中的数据是如何在区块链中保持一致的? 为什么所有区块链节点都能得出相同结果?合约调用这么复杂,状态真能保持一致吗?本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里…...

【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...

黑马Mybatis
Mybatis 表现层:页面展示 业务层:逻辑处理 持久层:持久数据化保存 在这里插入图片描述 Mybatis快速入门 
AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...

MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...

ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习) 一、Aspose.PDF 简介二、说明(⚠️仅供学习与研究使用)三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...