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

从零开始的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.xdnf.cn/news/12650.html

相关文章:

  • Python 中的上下文管理器:使用 with 关键字高效管理资源
  • 【Redis系列 04】Redis高可用架构实战:主从复制与哨兵模式从零到生产
  • 第10篇《数据库中间件集成监控与全链路观测系统设计》
  • 2007-2023年数字经济上市公司专利申请获得数据
  • [学习] GNSS信号跟踪环路原理、设计与仿真(仿真代码)
  • 关于汉语普通话元音音位最好归纳为几个的问题
  • 【Linux庖丁解牛】—系统文件I/O !
  • 【LRU】 (最近最少使用)
  • 《开篇:课程目录》
  • sendDefaultImpl call timeout(rocketmq)
  • 免费批量文件重命名工具
  • Burp Suite 基础
  • Redis:List类型
  • 外贸网站服务器选择Siteground还是Hostinger,哪个更好?
  • leetcode刷题日记——1.组合总和
  • 常用函数库之 - std::function
  • 从零设计一个智能英语翻译API:架构与实现详解
  • 打卡第47天
  • Day15
  • Java编程之适配器模式
  • 【题解】[UTPC2024] C.Card Deck
  • CF2056 D. Unique Median(2200)
  • 快速部署和启动Vue3项目
  • Pytorch学习——自动求导与计算图
  • 在Ubuntu22.04 系统中安装Docker详细教程
  • 大话软工笔记—需求分解
  • 大数据(2) 大数据处理架构Hadoop
  • 原型链与继承
  • 实习学习项目
  • 十(1). 强制类型转换