Python基础 - 11.模块

成功解决ImportError: cannot import name ‘_validate_lengths‘ ​ 成功解决ImportError: cannot import name '_validate_lengths' 目录 解决问题 解决思路 解决方法 解决问题 ImportError: cannot import name '_validate_lengths' 解决思路 导入错误:无法导入名称“_validate_lengths” 解决方法 numpy版本与当前库skimage的版本不匹配导致!推荐T2方法! T1、将numpy版本降低到1.15以下 T2、直接修改源代码激活原方 阅读详情

模块

任何Python可以独立运行,也可以做为模块被其它文件导入并使用其中的对象。这是实现代码复用的重要形式。为了组织大规模软件开发,需要把一些独立功能的代码分开存放到各个文件中,模块中每个子文件夹中包含一个__init__.py文件。

比如,习惯上,一个文件中只写一个类(Java的编程思想)

# 类的创建者
class Dog(object):
    def __init__(self, name, age):
        self.__name = name
        self.__age = age

    def __str__(self):
        return "name:%s,age:%d" % (self.__name, self.__age)
    
    # property装饰器
    @property # name = property(name)
    def name(self):
        return self.__name

    @name.setter
    def name(self, name):
        self.__name = name

然后,在主流程的文件(main.py)中,需要导入dog模块,并使用其中的类或函数等标识符。

导入的方法:

方法一:使用import 模块名

此时,需要通过“模块名.类名”或“模块名.函数名”访问对应的标识符

比如:

import dog

dog1 = dog.Dog('旺财', 13)
attrs = vars(dog1) 
print(attrs) # {'_Dog__name': '旺财', '_Dog__age': 13}
print(attrs['_Dog__age']) # 13    
print(vars())

方法二:使用from 模块名 import 标识符

其中,标识符包括类名、函数名、变量名等等。

from dog import Dog

dog1 = Dog('旺财', 13)
attrs = vars(dog1) 
print(attrs) # {'_Dog__name': '旺财', '_Dog__age': 13}
print(attrs['_Dog__age']) # 13    
print(vars())

如果要导入模块中的多个标识符,可以通过逗号进行分割

 from dog import Dog, HabaDog

如果要导入模块中的全部标识符,可以通过星号代码具体的标识符

 from dog import * 

如果再创建一个文件test.py写:

from main import * 

这样main.py中的所有内容都被导入,这样会存在着极大的风险,为了避免该风险,需要在main.py中添加

# 其它模块或文件导入该模块时,__name__值一般是模块名,不会执行main()
# 仅 main.py运行时,__name__值是__main__
if __name__ == '__main__':
    main()

init.py

_init_.py 文件的作用是将文件夹变为一个Python模块,Python 中的每个子模块(子文件夹),都有__init__.py 文件。主要作用是设置__all__变量以及执行初始化模块所需的代码。其中__all__变量中定义的对象可以在使用
from … import * 全部导入。

在这里插入图片描述

其中的__init__.py

# -*- coding: utf-8 -*-
from __future__ import absolute_import

from . import fields, reqparse, apidoc, inputs, cors
from .api import Api  # noqa
from .marshalling import marshal, marshal_with, marshal_with_field  # noqa
from .mask import Mask
from .model import Model, OrderedModel, SchemaModel  # noqa
from .namespace import Namespace  # noqa
from .resource import Resource  # noqa
from .errors import abort, RestError, SpecsError, ValidationError
from .swagger import Swagger
from .__about__ import __version__, __description__

__all__ = (
    '__version__',
    '__description__',
    'Api',
    'Resource',
    'apidoc',
    'marshal',
    'marshal_with',
    'marshal_with_field',
    'Mask',
    'Model',
    'OrderedModel',
    'SchemaModel',
    'abort',
    'cors',
    'fields',
    'inputs',
    'reqparse',
    'RestError',
    'SpecsError',
    'Swagger',
    'ValidationError',
)

项目实战

项目需求(三)

app应用中包含:

在这里插入图片描述

  • www应用中包含:

在这里插入图片描述

  • app和www应用中设置__version__及__description__

  • python manage.py baoai显示版本信息

本章项目源码

URL:https://gitee.com/yuanbaonet/master_python/tree/baoai_python_v11/

对应版本:baoai_python_v11

对应文件:sample/python/p11.py

python3基础梳理11python中模块和包 本篇梳理python中模块和包的用法 阅读详情

相关推荐

Error: dependent ‘..\..\..\..\Qt\5.15.2\msvc2019\include\QtWidgets\QMainWindow‘ does not exist.

核心问题:修改 Build 目录为源码子目录后,MSVC 编译报错,本质是变量设置异常,导致 qmake 生成多余回溯路径;临时解决:在 .pro 文件添加;最优解决:将上述配置写入 Qt 的 msvc 对应 qmake.conf 全局文件,一劳永逸;禁止 qmake 计算路径时向上回溯,避免生成异常路径。

mumufan05的专栏 878

GitGraph.js性能优化指南:大型Git仓库的可视化处理技巧

GitGraph.js是一个强大的JavaScript库,专门用于在浏览器中绘制美观的Git图表。对于需要处理大型Git仓库的开发者来说,性能优化是确保流畅可视化体验的关键。本文将分享GitGraph.js在处理大型仓库时的性能优化技巧和最佳实践。 ## 为什么大型Git仓库可视化需要性能优化? 当Git仓库包含数百甚至数千个提交时,传统的可视化方法可能会遇到性能瓶颈。GitGraph.js通

gitblog_00885的博客 346

CS1237卡尔曼滤波实战:如何用24位ADC实现电子秤级精度?

本文详细介绍了如何利用CS1237 24位ADC芯片结合卡尔曼滤波算法实现电子秤级精度测量。通过解析CS1237硬件特性、卡尔曼滤波原理及STM32驱动优化,提供了一套完整的解决方案,包括多通道支持、驱动代码实现和性能调优技巧,适用于工业测量和嵌入式开发领域。

linux的博客 1087

Python-attrs项目中的类型注解深度解析

Python-attrs项目中的类型注解深度解析 什么是Python-attrs Python-attrs(简称attrs)是一个流行的Python库,它极大地简化了编写类的工作。通过使用装饰器,开发者可以快速定义具有清晰、简洁语法的类,同时自动获得__init__、__repr__等方法实现。 类型注解在attrs中的重要性 随着Python类型系统的成熟,类型注解已成为现代Python开发的重...

gitblog_00999的博客 381

基于微信小程序的垃圾分类系统,附源码

垃圾分类小程序管理员功能有个人中心,管理员管理,意见反馈管理,视频类型管理,垃圾类型管理,新闻类型管理,论坛信息管理,环保视频管理,环保知识管理,垃圾信息管理,环保新闻管理,用户管理,知识问答试卷管理,试题管理,测试管理,轮播图管理。用户可以在微信小程序上面注册登录,查看各种环保信息和垃圾信息,还可以参加知识问答等操作。垃圾分类小程序的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。

Java徐师兄的博客 2075

【SPI-NAND】Linux驱动移植实战:从规格书解析到内核适配

本文详细解析了SPI-NAND Flash的Linux驱动移植实战,从规格书关键参数提取到内核MTD子系统适配。内容涵盖存储结构解析、命令集映射、设备树配置及厂商驱动开发,特别强调ECC校验、坏块管理等NAND特性处理,并提供了性能优化与测试验证的实用技巧。

weixin_27076351的博客 351

python提效工具之cattrs(高效类序列化)和attrs库(简化类创建)详解

一、前言如果场景中有很多的 序列化和反序列的过程,那有没有一种工具让我们快速的去做这件事情呢,那就可以参考cattrs库。cattrs 是一个Python库,它提供了高级的数据结构转换功能,使得将Python类实例序列化和反序列化变得简单。cattrs特别适用于将复杂或深层的数据结构与常见的数据交换格式(如JSON、YAML等)之间做转换。它非常适合处理通过网络传输或存储在文件中的数据。cattr...

AI蜗牛车 1176

【电机控制入门】——电机控制书籍推荐

电机控制入门书籍推荐及分享 阅读须知: 1.电机控制的入门是涉及到机械、电子与控制等复杂交叉学习,它需要持续投入时间才可以看到学习的效果,如同“一万小时定律”。俗话说,九层之台,起于垒土,因此电机控制入门没有所谓的速成培训班。相反,还需要夯实好一定的基础。为此,博主建议从基础理论抓起,故推荐相关的书籍并分享给大家。 2.学习电机贵在动手实践,无论是借助于MATLAB/Simulink仿真平台来验证理论分析,或是使用板子对所设计的控制系统进行物理实现,博主极力推荐在一定基础(看完部分以下推荐的书籍),一边动手

昔时扬尘处 3万+

Ctool哈希与HMAC工具:MD5、SHA系列等8种算法的详细对比

Ctool是一款集成多种程序开发常用工具的开源项目,支持Chrome、Edge、Firefox、uTools等多平台,其中哈希与HMAC工具提供了MD5、SHA1、SHA256等多种算法,帮助开发者快速进行数据校验与加密操作。 ## 哈希算法基础:5种常用算法解析 🧐 哈希算法是将任意长度的输入数据转换为固定长度输出的函数,广泛用于数据完整性校验、密码存储等场景。Ctool的哈希工具模块([

gitblog_00651的博客 385

【Unity实战篇】 接入百度翻译,实现文本自动翻译功能

日常在做项目的过程中,游戏本地化几乎已经成为必不可少的一步。 本篇文章将演示怎样在Unity中接入百度翻译,实现文本自动翻译的功能。

努力前行,总会成为自己心中的那道光 9059

三维重建/SLAM笔记_最佳学习路线/攻略

本文目的 学习三维重建,需要不少知识,而知识之间又存在不同的依赖关系,为了后来人能少走弯路,也为了对自己的知识框架系统总结,特记录自己的学习路线。 学习心得 关于读书,了解基础知识是一方面,产生疑问也是一方面,为以后知道学习什么留下印象; 一回生,二回熟,看不懂时,大多是因为先验知识不够,没关系,多查多想,总会搞懂的。 学习路线 1.计算机图形学基础(OpenGL基础版)(徐文鹏 清...

惊鸿一博 3291

Python基础11 模块一

一 模块的概念 1 模块的概念介绍 一个包含python代码的文件就是一个模块。 模块的作用: 1现在程序开发文件比较大,都放在一个文件中维护不方便,拆分成多个文件方便维护与管理 2模块可以增加代码的重用率 2  创建模块 模块本身就是一个文件,所有的py代码都可以在文件中直接书写,不过我们开发共用模块时, 最好在模块中书写一下内容。 变量             模块中的属性值...

小羽飞的博客 240

微信小程序:使用mqtt手机屏幕锁屏后导致中断问题,让mqtt在手机黑屏后依然能保持连接及持续后台运行接收或处理任务,详解微信小程序MQTT在应用退到后台或手机熄屏的情况下自动检测并重连【强制保活】

微信小程序切后台后MQTT连接无法维持,微信小程序MQTT一旦用户锁屏、切换到后台或手机熄屏,连接就会断开,导致无法继续监听和处理业务消息,微信小程序mqtt保活方案,微信小程序屏幕锁屏或息屏导致mqtt连接中断怎么办,如何解决MQTT不能黑屏持续连接的问题,微信小程序应用退到后台 MQTT连接断开问题解决,苹果ios手机,安卓手机,uniapp微信小程序mqtt断开怎么解决,后台应用怎么保活,uni-app中MQTT连接频繁断开如何解决?应用退到后台后MQTT连接断开以及常连接断连的问题,微信小程序、MQ

✅ 精选推荐文章 3026

python基础—11模块与包

一、模块 1、定义 模块就是工具包,要想使用这个工具包中的工具(就好比函数),就需要导入这个模块 模块是非常简单的Python文件,单个Python文件就是一个模块,两个文件就是两个模块。 2、模块导入 (1)import 模块名1,模块名2 (2)import 模块名.函数名 因为可能存在这样一种情况:在多个模块中含有相同名称的函数, 如果只是通过函数名来调用,解释器无法知道到底要调用哪个函数。...

小黑的博客 453

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Python基础(11)模块

文章目录1.测试模块12.测试模块23.import导入模块4.import同时指定别名5.from import导入6.from import导入注意事项7.from import导入全部8.模块的搜索顺序9.name测试导入10.name模块11.导入包 1.测试模块1 # 全局变量 title = "模块1" # 函数 def say_hello(): print("我是 %s"...

御坂御坂001的博客 625

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Python基础 day11 模块与包

本文主要讲述了模块与包的概念以及对其导入使用的方法。

2401_88454635的博客 1500

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

python基础学习day11-模块

python基础学习day-模块 一、模块化程序设计理念 模块和包概念的进化史 1.python的程序由模块组成,一个模块对应python源文件,一般后缀名:.py 2.模块由语句组成,运行python程序时,按照模块中语句的顺序依次执行。 3.语句是python程序的构造单元,用于创建对象、变量赋值、调用函数、控制语句等。 标准库模块、模块应用的优势 与函数类似,模块也分为标准库模块和用户自定义模块。 python标准库模块涵盖很广泛,例如:random(随机数)、math(数学运算)、time(时间)

zsusu_0821的博客 916

python基础知识11:模块

Python学习之模块 文章目录Python学习之模块1.量变引起质变2.进化史3.标准库模块4.模块化编程的流程5.包 1.量变引起质变 2.进化史 Python 程序由模块组成。一个模块对应 python 源文件,一般后缀名是:.py。 模块由语句组成。运行 Python 程序时,按照模块中语句的顺序依次执行。 语句是 Python 程序的构造单元,用于创建对象、变量赋值、调用函数、控制语句等。 程序—>包—>模块—>(类、函数、语句) 3.标准库模块 与函数类似,模块也分为标准

fafagege11520的博客 649

Python基础学习(11)常用模块

一、time 二、random 三、os 四、sys 五、json 补充1:JSON字符串 补充2:JSON字符串和字典的区别 六、hashlib

Appppiiiiggg的博客 1599

Python基础之day11-模块

Python基础之day11-模块 文章目录Python基础之day11-模块一、模块、包、库介绍二、导入模块三、__name__属性四、dir()函数五、__all__属性六、导包 代码仓库地址: https://gitee.com/andox_yj/python 一、模块、包、库介绍 模块介绍:模块是一个有函数和变量的python文件。模块可以被别的程序引入,以使用该模块中的函数等功能。 包介绍:包的概念在模块之上,将有联系的模块放到同一个文件夹下,并且在这个文件夹创建一个名字为__init__.py

weixin_45651291的博客 369

1python基础语法_11模块

http://www.runoob.com/python3/python3-module.html 模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库的方法。 1、import sys 引入 python 标准库中的 sys.py 模块;这是引入某一模块的方法。 2、sys....

weixin_30877227的博客 86

Python 基础笔记 day-11 模块

模块化(module)程序设计理念 Python 程序由模块组成。一个模块对应 python 源文件,一般后缀名是:.py。 模块由语句组成。运行 Python 程序时,按照模块中语句的顺序依次执行。 语句是 Python 程序的构造单元,用于创建对象、变量赋值、调用函数、控制语句等 模块化编程的重要优势 便于将一个任务分解成多个模块,实现团队协同开发,完成大规模程序 实现代码复用。一个模块实现后,可以被反复调用。 可维护性增强。 模块化编程的流程 模块化编程的一般流程: 设计 API,进行功能

z___21的博客 347

Python基础之——11_模块与包

目录 一、模块 模块的定义 导入模块的方式 如何导入模块? 二、包 包的概念 官方文档中的例子 三、实验操作 3.1模块的理解 3.2name的特殊用法 3.3包的管理 3.4模块的分类 附录:hello.py文件 附录:自建sdk包下的文件 一、模块 模块的定义 模块就是工具包,要想使用这个工具包中的工具(就好比函数),就需要导入这个模块 模块是非常简单的Python文件,单个Python文件就是一个模块,两个文件就是两个模块。 导入模块的方式 ...

Zhaohui_Zhang的博客 1168

python基础11 模块二 random sys time 模块

1  random 模块 产生随机数 1随机小数 random.random()     产生大于0且小于1之间的小数    包含头不包含尾 num = random.random() print(num) 2 产生指定范围内的随机小数 random.uniform(a,b) num = random.uniform(1,1.1) print(ret) 3产生指定范围内的随机整...

小羽飞的博客 158

11_Python基础_Python常用的内置模块

Python常用的内置模块 在做项目的过程中常常会使用外部已经开发好的模块,这样的重用可以加快项目的开发,外部开发好的模块有Python官方提供的,也有第三方开发的,我们把Python官方提供的模块,称为内置模块。 一、数学计算模块--math 在math模块中包含了与数学运算相关的函数,如指数,对数,平方根,三角函数…… 常用的math模块中的函数 ceil(x) 返回大于或等x的最小整数 ...

advent86的专栏 579
上一篇: Python基础 - 10.异常处理
下一篇: Python基础 - 12.文件
idsof
博客等级 码龄21年 9粉丝 34原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值