Python学习进阶之薄弱点总结
'''
1.实现用户传入一个普通字符串,
返回字符串的md5加密结果的函数
'''
# import hashlib
#
# def M(str):
# m = hashlib.md5()
# m.update(str.encode('utf8'))
# return m.hexdigest()
#
# s = M('stoll')
# print(s)
#函数对象的四大功能
#1. 引用(和变量一样)
# x = "hello nick"
# y = x
# def func():
# print('from func')
# f = func
# print(func) #打印的是函数的内存地址
#2. 当做参数传给一个函数 (和变量一样)
# len(x)
# def foo(m):
# m()
# foo(func)
#3. 当做函数的返回值
# def foo(x):
# return x
#
# res = foo(func)
# print(res)
# res()
#4. 可以当做容器类型的元素
# l = [x]
#
# function_list = [func]
# function_list[0]()
'''
return和yield关键字的区别
相同点
功能都是返回程序执行结果
区别
yield返回执行结果并不中断程序执行,
return在返回执行结果的同时中断程序执行。
'''
'''
模块搜索的顺序
1. 先从内存中找
2. 内置的模块
3. 环境变量sys.path中找
'''
'''
包中的__init__文件有以下作用:
1.标识该文件是Package
2.模糊导入中的*中的模块是由__all__来定义的,
定义__all__用来模糊导入
'''
"""
1. 使用while循环实现for循环底层原理
# 提示:使用下述代码可以捕捉异常
try:
# 逻辑代码
except StopIterationError:
break
"""
# 1. 首先使用iter把lt变成迭代器对象;对于文件也要使用iter方法吧文件再一次iter下
# 2. 然后使用next方法进行迭代取值
# 3. 判断StopIteration异常,遇到异常终止
# lt = [2,2,3,5] # 对该列表进行循环取值
# lt_iter = lt.__iter__() # 把列表(可迭代对象)变成迭代器对象
# while 1: # 只要是true,就执行
# try:
# print(lt_iter.__next__())
# except StopIteration: # 遇到异常就抛出,为什么会抛异常,因为while会一直循环,但是迭代器对象只能遇到执行4个__next__,第五个没有了,就会遇到异常
# break
lt=[1,2,3,4,5,5]
lt_iter = lt.__iter__()
while 2:
try:
print(lt_iter.__next__())
except StopIteration:
break
"""
2. 阅读需求,编写代码:
1. 规定使用filter()内置函数和匿名函数
2. 将`names = ['Nick', 'Sean_sb', 'Tank_sb', 'Jason_sb']`中
留下以sb结尾的名字
"""
# names = ['Nick', 'Sean_sb', 'Tank_sb', 'Jason_sb']
# 结果为:['Sean_sb', 'Tank_sb', 'Jason_sb']
print(list(filter(lambda a: a.endswith('sb'), names)))
# print(list(filter(lambda x: x.startswith('s'.upper()), names)))
"""
3. 阅读需求,编写代码:
1. 自定义生成器
2. 该生成器拥有range()函数拥有的功能
"""
def self_range(start, end, step):
list = [start, end]
print(start)
while list[0] < list[1]:
yield list[0]
list[0] += step
#
for i in self_range(1, 10, 2):
print(i)
"""
# 结果为:
for i in self_range(1, 10, 2):
print(i) # 1,3,5,7,9
4. 阅读需求,编写代码:
1. 自定义3\*4的numpy数组,
2. 把第1行和第2列的元素置为0
import numpy as np
# 结果为:
'''
array([[0. , 0. , 0. , 0. ],
[0.22721118, 0. , 0.87410034, 0.85833497],
[0.40389177, 0. , 0.42199234, 0.87709706]])
'''
l = np.empty((3, 4))
arr = l.copy()
arr[:1, :] = 0
arr[:, 1:2] = 0
print(arr)
5. 阅读需求,编写代码:
1. 对于字符串`Life234234is beautiful234because234of persistence`
2. 请使用re模块 **一行代码** 还原这句话为`Life is beautiful because of persistence`
"""
import re
s = 'Life234234is beautiful234because234of persistence'
# 结果为:Life is beautiful because of persistence
l = re.sub('234',' ', s)
print(l)
Python学习进阶之薄弱点总结的更多相关文章
- 2020年python学习进阶方向
相信很多友人在学习python过程都会遇到很多 虽然python入门很容易 但是难免会遇到瓶颈 遇到问题没人交流 很难提升 对此 给你们简单指点学习方向 1.认识python linux基本 ...
- Python学习进阶
阅读目录 一.python基础 二.python高级 三.python网络 四.python算法与数据结构 一.python基础 人生苦短,我用Python(1) 工欲善其事,必先利其器(2) pyt ...
- Python 学习 —— 进阶篇(装饰器、类的特殊方法)
Python基础部分学完之后,在进入其OOP部分前,先理解一下其装饰器这种结构,其功能可类比于Java中的面向切面编程,下面参见具体实例: def log(f): def fn(x): print ' ...
- python学习进阶一
map()函数 def format_name(s): return s.capitalize() print map(format_name, ['adam', 'LISA', 'barT']) R ...
- Python学习笔记进阶篇——总览
Python学习笔记——进阶篇[第八周]———进程.线程.协程篇(Socket编程进阶&多线程.多进程) Python学习笔记——进阶篇[第八周]———进程.线程.协程篇(异常处理) Pyth ...
- 第二弹:超全Python学习资源整理(进阶系列)
造一个草原要一株三叶草加一只蜜蜂.一株三叶草,一只蜂,再加一个梦.要是蜜蜂少,光靠梦也行. - 狄金森 "成为编程大牛要一门好语言加一点点天分.一门好语言,一点点天分,再加一份坚持.要是天分 ...
- 学习推荐《从Excel到Python数据分析进阶指南》高清中文版PDF
Excel是数据分析中最常用的工具,本书通过Python与Excel的功能对比介绍如何使用Python通过函数式编程完成Excel中的数据处理及分析工作.在Python中pandas库用于数据处理,我 ...
- Python学习day15-函数进阶(3)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习day14-函数进阶(2)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
随机推荐
- NOI 2010 海拔(最小割转最短路)
题意 https://www.lydsy.com/JudgeOnline/problem.php?id=2007 思路 首先可以发现一个结论,每个位置的海拔只有能是 \(0\) 和 \(1\) ,然后 ...
- 黑科技!两行代码完美解决:同时设置overflow-x:hidden,overflow-y:visible无效的问题
不废话,直接上代码 <!DOCTYPE html> <html> <head> <style> body { padding: 0; margin: 0 ...
- CentOS7 Harbor 安装
安装Harbor,首先要安装docker 和 docker-compose 1.安装docker (1)安装一些必要的系统工具 $ yum install -y yum-utils device- ...
- zookeeper编译环境搭建
当前我使用的jdk环境是1.8 当看到build successful的时候 说明已经构建成功,在这个期间会下载一些工具,发现下载很慢,比如ivy-2.4.0.jar包,如果下载不下来,可以进行手工下 ...
- WindowsServer -------------部署软件
1.windowsServer 中创建 lls 在服务器中创建lls 参考 将文件扩展名调出 2.安装数据库 将数据库传递到服务器中 安装sqlserver 数据库 3.在系统中创建文件存 ...
- Spring Security简介与入门Demo
1:Spring Security简介 Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架.它提供了一组可以在Spring应用上下文中配 ...
- windows 下验证文件MD5
CertUtil -hashfile C:\Users\admin\Downloads\aaa.txt MD5 CertUtil -hashfile C:\Users\admin\Downloads\ ...
- 第二十节:Asp.Net Core WebApi生成在线文档
一. 基本概念 1.背景 使用 Web API 时,了解其各种方法对开发人员来说可能是一项挑战. Swagger 也称为OpenAPI,解决了为 Web API 生成有用文档和帮助页的问题. 它具有诸 ...
- 基于 HTML5 WebGL 的 3D 智慧隧道漫游巡检
前言 这次为大家展示的是通过 HT for Web 灵活的图型化编辑工具打造的智慧隧道监控系统.通过 HTML5 技术实现了桌面和移动端的跨平台性,同时现实了可视化运维. 这次主要跟大家分享里面的漫游 ...
- tkmybatis VS mybatisplus
本文是简单对比了以下官网上的内容 文章目录 TkMybatis Vs MybatisPlus 1.基础CRUD BaseMapper 2.代码生成器 3. 全局主键 Sequence主键 4. 热加载 ...