当前位置: 首页 > article >正文

从零开始的python学习(七)P102+P103+P104+P105+P106+P107

本文章记录观看B站python教程学习笔记和实践感悟,视频链接:【花了2万多买的Python教程全套,现在分享给大家,入门到精通(Python全栈开发教程)】 https://www.bilibili.com/video/BV1wD4y1o7AS/?p=6&share_source=copy_web&vd_source=404581381724503685cb98601d6706fb

上节课学习匿名函数lambda的使用,函数的递归操作,斐波那契数列,常用的内置函数-类型转换函数,常用的内置函数-数学函数你,常用的内置函数-迭代器操作函数,常用的内置函数-其他函数,本节课学习本章总结和章节选择题,实战一:计算列表元素的最大值,实战二:提取字符串中所有的数字,实战三:字符串中字母大小写转换,实战四:实现操作符in的判断功能。

一、本章总结和章节选择题

介绍完本章的知识点,下面为部分选择题:

选B,函数的返回值可有可无,有的时候可以return,没有的话就是可以省略不写。

选C,因为全局变量和局部变量可以相同,但是发生冲突时,局部变量的优先级更高。

因为参数可有可无,也可以是多个也可以没有。

二、实战一:计算列表元素的最大值

随机生成使用random包,所以先import random。然后使用遍历,将后面每一个元素跟第一个元素相比,如果比第一个元素要大,更大的那个赋给lst[0]

#实战一:不用内置函数max找到最大值
import random
def get_max(lst):x=lst[0] #x储存的是元素的最大值,第一步我们先假设索引为0的为列表中的最大值#遍历,将第一个(索引为0)分别与第二个,第三个,...,最后一个元素进行对比,这个过程需要使用遍历来实现for i in range(1,len(lst)):if lst[i]>x:x=lst[i] #对最大值进行重新赋值return x
#调用
lst=[ random.randint(1,100) for item in range(10)]
print(lst)
#计算列表元素的最大值
max=get_max(lst)
print(max)

结果如下:

 

三、实战二:提取字符串中所有的数字

#实战二:使用isdigit累加数值
def get_digit(x):s=0 #存储累加值lst=[]for item in x:if item.isdigit(): #如果是数字lst.append (int(item))#求和s=sum(lst)return lst,s
#准备函数的调用
s=input("请输入一个字符串: ")
#调用
lst,x=get_digit(s)
print('提取的数字列表为:',lst)
print('累加值为:',x)

运行结果如下;

 

四、实战三:字符串中字母大小写转换

如何判断大小写,可以使用ASCII码去判断,因为大小写之间的ASCII之间差32,如果判定为大写,那就是介于A与Z之间,并且转换为小写的只需要加上32即可;同理如果将小写转成大写就是把ASCI减去32即可。不是字母的直接加在列表里面就行。

#实战三:将大写字母转化为小写的,将小写字母转化为大写的
def lower_upper(x): #x为字符串,并且它在这里是形式参数,后面需要给它赋值lst=[]for item in x:if 'A'<=item<='Z': #如果字符是大写字母lst.append(chr(ord(item)+32)) #ord()这个内置函数可以将字符串转为Unicode码整数,加上32,chr()整数码转成字符elif 'a'<=item<='z': #如果字符是小写字母lst.append(chr(ord(item) - 32))else: ##如果字符都不是字母了,直接添加即可lst.append(item)return ''.join(lst) #''.join(lst)表示用空字符串 ''作为连接符,把列表里的字符元素用空字符串连接,变成最终字符串返回
#1、list.append是一个函数,学过其他编程语言就知道,这是调用列表类里的一个函数。
#2、这个函数作用是在列表list最后item添加元素
#准备调用
s=input('请输入一个字符串:')
new_s=lower_upper(s) #函数的调用
print(new_s)

 结果如下:

五、实战四:实现操作符in的判断功能

def get_find(s,lst):for item in lst:if s==item:return Truereturn False
lst=['hello','world','python']
s=input('请输入您要判断的字符串:')
result=get_find(s,lst)
print('存在' if result else '不存在') #if...else的简写,三元运算符 if result==True if result利用到对象的布尔值

结果如下:

请输入您要判断的字符串:hello
存在进程已结束,退出代码为 0(或者另一种情况)
请输入您要判断的字符串:html
不存在进程已结束,退出代码为 0

本节完

http://www.lryc.cn/news/2404762.html

相关文章:

  • Linux--进程的调度
  • Hadolint:Dockerfile 语法检查与最佳实践验证的终极工具
  • Python爬虫实战:研究Hyper 相关技术
  • 基于langchain的简单RAG的实现
  • VmWare Ubuntu22.04 搭建DPDK 20.11.1
  • selenium-自动更新谷歌浏览器驱动
  • 34、协程
  • Apache POI操作Excel详解
  • Docker容器部署elasticsearch8.*与Kibana8.*版本使用filebeat采集日志
  • OpenCV CUDA模块图像处理------双边滤波的GPU版本函数bilateralFilter()
  • 华为手机开机卡在Huawei界面不动怎么办?
  • 并行硬件环境及并行编程
  • ORM框架(SQLAlchemy 与 Tortoise )
  • go语言map扩容
  • 安全访问家中 Linux 服务器的远程方案 —— 专为单用户场景设计
  • 前端开发三剑客:HTML5+CSS3+ES6
  • [Java 基础]Java 中的关键字
  • 5.3 Spring Boot整合JPA
  • 腾讯开源视频生成工具 HunyuanVideo-Avatar,上传一张图+一段音频,就能让图中的人物、动物甚至虚拟角色“活”过来,开口说话、唱歌、演相声!
  • [文献阅读] Emo-VITS - An Emotion Speech Synthesis Method Based on VITS
  • 网络协议通俗易懂详解指南
  • OpenCV-Python Tutorial : A Candy from Official Main Page(持续更新)
  • 【Vue】指令补充+样式绑定+计算属性+侦听器
  • .Net Framework 4/C# 泛型的使用、迭代器和分部类
  • LLM 笔记:Speculative Decoding 投机采样
  • 当SAP系统内计划订单转换为生产订单时发生了什么?
  • PDF转PPT转换方法总结
  • 3D Web轻量化引擎HOOPS Communicator的定制化能力全面解析
  • 【力扣链表篇】19.删除链表的倒数第N个节点
  • .Net Framework 4/C# 集合和索引器