python包以及异常、模块、包的综合案例(较难)

1.自定义包

python中模块是一个文件,而包就是一个文件夹

有这个_init_.py就是python包,没有就是简单的文件夹

包的作用:当我们的模块越来越多时,包可以帮助我们管理这些模块,包的作用就是包含多个模块,但包的本质依然是模块。

注意:新建包后,包内部会自动创建'_init_.py'文件,这个文件控制着包的导入行为

__init__.py的作用是通过这个文件来代表一个文件夹是python的包,而非普通的文件夹

方式一:

方法1:

import 包名.模块名

包名.模块名.目标

方法2:

from 包名 import 模块名

模块名.目标

方法3:

from 包名.模块名 import 目标

目标

方式二:

__all__针对的是'from ... import*'这种含有*的方式

当输入了这一段话之后

显示my_module2报错,是因为我们定义了*只包含my_module1,*只能导入my_module1

2.安装第三方包

这些第三方的包,极大的丰富了python的编程生态,提高了我们的开发效率

但是由于是第三方,所以python没有内置,所以我们需要安装它们才可以导入使用哦

命令提示符程序就是cmd

可以看到这个下载是比较慢的,是因为这个网站是属于国外的,我们在国内去连接它,速度就比较慢

ctrl c 让下载停下来

当你使用了这一串网址后,你会发现网速瞬间提升

可以自己输入python切换到python环境中,然后import numpy 验证一下是否下载成功

点击右下角的python解释器

点击+

选中想要的包直接下载安装就好

如果国家下载较慢也可以使用刚才使用过的路径加速

3.python异常、模块、包:综合案例

#字符串相关的工具模块
def str_reverse(s):"""功能是将字符串完成反转:param s:将被反转的字符串:return:反转后的字符串"""return s[::-1]#1正着排序,-1反着排序
def substr(s,x,y):"""功能是按照给定的下标完成给定字符串的切片:param s:即将被切片的字符串:param x:切片的开始下标:param y:切片的结束下标:return:切片完成后的字符串"""return s[x:y]
if __name__ == '__main__':print(str_reverse("黑马程序员"))print(substr("黑马程序员",1,3))

#文件处理相关工具模块
def print_file_info(file_name):"""功能是:将给定路径的文件内容输出到控制台中:param file_name:即将读取的文件路径:return:None"""f = Nonetry:f = open(file_name,"r",encoding="UTF-8")content = f.read()print("文件的全部内容如下:")print(content)except Exception as e:print(f"程序出现异常了,原因是{e}")finally:if f: #如果变量是None,表示False,如果有任何内容,就是Truef.close()def append_to_file(file_name,date):"""功能:将指定的数据追加到指定的文件中:param file_name:指定的文件的路劲:param date:指定的数据:return:None"""f = open(file_name,"a",encoding="UTF-8")f.write(date)f.write("\n")f.close()

import my_utils.str_util
from my_utils import file_utilprint(my_utils.str_util.str_reverse("黑马程序员"))
print(my_utils.str_util.substr("itheima",0,4))file_util.append_to_file("D:/test_append.txt","itheima")
file_util.print_file_info("D:/test_append.txt")

这个综合案例较难,大家一起加油!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/56053.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于JSP的校园宿舍电费缴纳系统【附源码】

基于JSP的校园宿舍电费缴纳系统 效果如下: 系统首页界面 学生登录界面 公告栏页面 在线留言页面 个人中心界面 管理员登录界面 管理员功能界面 宿舍信息管理界面 余额管理界面 使用电量管理界面 余额提醒管理界面 学生功能界面 研究背景 随着网络的高速发展&…

使用休眠的方式来解决电脑合盖后偶尔不能正常睡眠的问题

背景描述 用过Windows笔记本电脑的用户应该都偶尔遇到过这样的一个问题,就是电脑直接合上盖后放在包里,按道理来说应该会自动进入睡眠模式,但是等电脑再从包里拿出来时发现电脑很烫,并且已经没电了,似乎并没有进入到休…

【乐企文件生成工程】关于乐企文件生成工程的详细介绍

发票文件生成方式有两种思路: 1、根据已有的OFD模板,动态替换ofd模板内容;之后将ofd转pdf(局限:单行问题不大) 可在【乐企】专栏查看详细代码详情可以在此处了解【乐企】有关乐企能力测试接口对接-基础版&a…

Web,RESTful API 在微服务中的作用是什么?

大家好,我是锋哥。今天分享关于【Web,RESTful API 在微服务中的作用是什么?】面试题?希望对大家有帮助; Web,RESTful API 在微服务中的作用是什么? 在微服务架构中,Web 和 RESTful …

Python语法结构(三)(Python Syntax Structure III)

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…

Python编程基础入门:从风格到数据类型再到表达式

前期已经详细介绍了环境搭建:PycharmPython、VsCodePython Python编程基础入门:从风格到数据类型再到表达式 在编写Python程序时,理解其基础结构和语法是每个初学者的必修课。这篇文章将带你深入了解Python的基本编程风格、数据类型、类型转…

【功能安全】相关项定义item definition

目录 01 item definition定义 02 相关项组成 03 相关项最佳实践 📖 推荐阅读 01 item definition定义 概念阶段的开发是以相关项定义(Item Definition)开始的,相关项定义是对系统的描述,此系统也是标准中安全要求应用的对象。 相关项定义目的: a) 在整车层面对相关…

【跑酷项目02】实现触发并在前方克隆金币

完整代码 using System.Collections; using System.Collections.Generic; using UnityEngine;public class CoinColoneManager : MonoBehaviour {// 这个脚本用来检测金币触发区,一旦触发就在前方指定位置克隆金币// 首先做触发检测 OnEnterTrigger(), // 用克隆函…

云计算第四阶段: cloud二周目 07-08

cloud 07 一、k8s服务管理 创建服务 # 资源清单文件 [rootmaster ~]# kubectl create service clusterip websvc --tcp80:80 --dry-runclient -o yaml [rootmaster ~]# vim websvc.yaml --- kind: Service apiVersion: v1 metadata:name: websvc spec:type: ClusterIPselector…

ChatTTS在Windows电脑的本地部署与远程生成音频详细实战指南

文章目录 前言1. 下载运行ChatTTS模型2. 安装Cpolar工具3. 实现公网访问4. 配置ChatTTS固定公网地址 前言 本篇文章主要介绍如何快速地在Windows系统电脑中本地部署ChatTTS开源文本转语音项目,并且我们还可以结合Cpolar内网穿透工具创建公网地址,随时随…

react里实现左右拉伸实战

封装组件: 我自己写的一个简单的组件,可能有bug。不想自己写,建议用第三方库实现。 新建一个resizeBox.tsx文件写上代码如下: import React, { ReactNode, useState, useEffect, useRef } from react; import styles from &quo…

【中危】Oracle TNS Listener SID 可以被猜测

一、漏洞详情 Oracle 打补丁后,复测出一处中危漏洞:Oracle TNS Listener SID 可以被猜测。 可以通过暴力猜测的方法探测出Oracle TNS Listener SID,探测出的SID可以用于进一步探测Oracle 数据库的口令。 建议解决办法: 1. 不应该使…

【某农业大学计算机网络实验报告】实验四 路由信息协议RIP

实验目的: 1.深入了解RIP协议的特点和配置方法:通过此次实验,掌握RIP协议作为一种动态路由协议的基本工作原理,了解其距离向量算法的核心概念,以及如何在网络设备上配置RIP协议; 2.验证RIP协议…

基于微信小程序的电影交流平台

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…

【Next.js 项目实战系列】02-创建 Issue

原文链接 CSDN 的排版/样式可能有问题,去我的博客查看原文系列吧,觉得有用的话,给我的库点个star,关注一下吧 上一篇【Next.js 项目实战系列】01-创建项目 创建 Issue 配置 MySQL 与 Prisma​ 在数据库中可以找到相关内容&…

Java项目-基于Springboot的招生管理系统项目(源码+说明).zip

作者:计算机学长阿伟 开发技术:SpringBoot、SSM、Vue、MySQL、ElementUI等,“文末源码”。 开发运行环境 开发语言:Java数据库:MySQL技术:SpringBoot、Vue、Mybaits Plus、ELementUI工具:IDEA/…

智联云采 SRM2.0 testService SQL注入漏洞复现

0x01 产品简介 智联云采是一款针对企业供应链管理难题及智能化转型升级需求而设计的解决方案,针对企业供应链管理难题,及智能化转型升级需求,智联云采依托人工智能、物联网、大数据、云等技术,通过软硬件系统化方案,帮助企业实现供应商关系管理和采购线上化、移动化、智能…

求助,宠物空气净化器该怎么选?双十一有什么推荐购买的吗?

今晚就要付双十一尾款了,拖延症晚期的我还没做什么功课。本来不打算消费的,看了眼购物车,之前想买的宠物空气净化器降价了不少,不想错失这次优惠。 我家猫孩子之前不怎么掉毛的,连日常的梳毛我都经常偷懒,…

WordPress+Nginx 安装教程

WordPress 是一个开源的网站建设工具,可以用它来“快速”搭建个人博客,官网等等。它本身是用 php 开发的,本身部署不复杂,主要是需要一些配套的东西才能跑起来,网上的一些教程也是写的不清不楚,本文针对非 …

Centos7安装ZLMediaKit

https://github.com/ZLMediaKit/ZLMediaKit 一 获取代码 git clone https://gitee.com/xia-chu/ZLMediaKit cd ZLMediaKit git submodule update --init git submodule update --init 命令用于初始化和更新 Git 仓库中的子模块(submodules)。这个命令…