学习大数据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…...
稳压二极管数据手册参数深度解析:从符号到实战选型
1. 稳压二极管核心参数全解析 第一次拿到稳压二极管的数据手册时,我完全被那些密密麻麻的符号搞懵了。VZ、IZK、ZZT这些字母组合到底代表什么?后来在项目中踩过几次坑才明白,这些参数直接关系到电路的稳定性。就拿去年做的一个电源模块来说&a…...
告别双系统!Win11下用WSL2直通NVIDIA显卡跑PyTorch,保姆级配置避坑指南
告别双系统!Win11下用WSL2直通NVIDIA显卡跑PyTorch,保姆级配置避坑指南 在深度学习开发中,Linux环境往往能提供更高效的GPU计算体验,但日常办公和娱乐又离不开Windows的便利。传统解决方案是安装双系统,频繁重启切换不…...
Kotlin多平台集成OpenAI API:类型安全与协程流式处理实践
1. 项目概述:当Kotlin遇见OpenAI如果你是一名Android或Kotlin多平台(KMP)开发者,最近想在自己的应用中集成AI对话、图像生成或者语音转文本这类酷炫功能,那么你大概率绕不开OpenAI的API。但当你兴冲冲地打开官方文档&a…...
Python自动化红头文件生成:ReportLab与Jinja2技术实践
1. 项目概述:一个自动化的红头文件生成工具 最近在整理一些行政和项目文档时,经常需要处理格式要求极为严格的“红头文件”。这类文件通常用于正式通知、公告或批复,其版头、字体、字号、间距乃至印章位置都有近乎刻板的规定。手动在Word里调…...
移动端AI智能体Operit AI:打造离线可编程的Android全能助手
1. 项目概述:在手机上构建你的全能AI副驾如果你和我一样,是个重度效率工具爱好者,同时又对AI技术充满好奇,那么你肯定也经历过这样的困境:手机上的AI助手,要么是功能单一的聊天机器人,要么就是需…...
Windows本地AI开发环境搭建:OpenClaw与Ollama集成指南
1. 项目概述:一个为Windows开发者量身打造的本地AI开发环境如果你是一名在Windows 11上工作,同时又对本地运行大语言模型(LLM)和AI助手感兴趣的开发者,那么你很可能已经体验过那种“配置地狱”:WSL2、Docke…...
别再只用GitHub了!手把手教你用GitLab搭建团队专属代码仓库(从群组到项目实战)
别再只用GitHub了!手把手教你用GitLab搭建团队专属代码仓库(从群组到项目实战) 在开源生态中,GitHub无疑是代码托管平台的代名词。但对于需要私有化部署和精细权限控制的团队而言,GitLab提供了更完整的DevOps解决方案。…...
AI 驱动单元测试生成:智能优先级与自动化验证实践
1. 项目概述如果你和我一样,长期在维护一个中大型的 TypeScript 项目,那么“补单元测试”这件事,大概率是你技术债清单上那个永远在滚动、却很少被真正划掉的任务。手动写测试枯燥耗时,尤其是面对那些遗留的、逻辑复杂的业务函数时…...
FastAPI部署演进:从Gunicorn+Uvicorn镜像到原生多进程的迁移指南
1. 项目背景与演进:从“黄金搭档”到“历史遗产”如果你在过去几年里用 FastAPI 部署过 Web 服务,大概率听说过或者用过tiangolo/uvicorn-gunicorn-fastapi-docker这个 Docker 镜像。它一度是 FastAPI 官方文档里推荐的部署方案之一,由 FastA…...
冲突矿产法规合规:供应链尽责管理与ESG风险应对实战指南
1. 冲突矿产法规合规:一场被低估的供应链风暴如果你是一家电子、汽车或工业设备制造公司的供应链、法务或合规负责人,现在请立刻停下手中的工作,问自己一个问题:我们公司使用的锡、钽、钨、金(3TG)这四种金…...
