1.    包、模块、类

包可以理解为一个文件夹

每个包内可以有多个模块

2.    Python包与模块的命名

包是某一个模块所依赖的空间。不同的包下,可以有子包,模块可以和包以平行模式存在。

3.    __*__ 该格式为系统内定

包(package)里一定存在 __init__.py 文件,没有则是普通文件。

__init__.py文件本身就是一个模块

4.     import导入模块

在项目开发中,多个包之间不可避免要互相调用,可以使用import关键字在某个包中来调用其他包中的资源。

eg:在new1中使用new2中定义的变量 a

import new2

print(new2.a)

4.1   new1.under_new1.demo2 为包new1下的under_new1文件下的demo2模块,将该路径定义(as)为 a

eg:import new1.under_new1.demo2 as a

4.2    同级之下可以直接调用(import  模块名)

4.3    调用子包内的模块

import要加上子包的包名

4.4    不可以直接引用变量

4.5    from XXX import XXX

如果路径过长,要在代码中多次使用某个模块的变量,如下编写就显得啰嗦:

import directory_name.module_name

print(directory_name.module_name.a)

此时就可以利用以下方法来简化:

from directory_name.module_name import a

print (a)

4.6    调用模块下的变量 from *(模块) import *(变量/函数)

4.7    * 的使用

如果要引用某个模块中的多个变量,就要重复操作form XXX import XXX

from XXX import a

from XXX import b

from XXX import c

使用 * 则可以一次性导入所有变量:  from XXX import *

或者使用逗号分隔 :  from XXX import a,b,c   如果一行无法书写完成,则可如下书写:

from XXX import (a,b,

c)

4.8    __init__.py  的使用

一个文件中是否拥有__init__.py ,决定这个文件是否是包。(有则是,无则否)

一个子包下拥有__init__.py模块,此时调用该子包下的任意模块包括这个包时,都会率先执行 __init__.py模块

4.9   __all__   的使用

限制导入变量

批量导入时可以限制模块内某些变量不被导入,但是单个导入时,仍然可以导入。(在该模块中用__all__声明)

在某个模块中存在三个变量a,b,c,在利用 * 导入时 只想导入a和b ,操作如下:

批量导入模块时,需要在__init__.py模块中利用__all__声明批量调用的模块有哪些。

使用  __all__  时,没有在列表中的变量可以利用 from XXX import XXX 来单独引入

4.10  两个模块之间不能互相调用,否则这两个模块之间会产生依赖,进行无限调用

5.     函数

round()

a = 1.2345

result = round(a,3)

(1)功能性

(2)隐藏细节

(3)避免编写重复的代码

5.1   定义

def funcname():

pass

(1) 可以没有参数列表

(2) return value 若没有返回值,Python默认返回None

eg:实现两个数字相加 :

def add(x,y):

result = x+ y

return result

打印参数:

def print(x):

print(x)

a = add(x,y)

b = pritn(x)

print(a,b)

import sys

sys.setrecursionlimit(1000000)

print()函数可以灵活防止参数个数,但并不是所有的函数都可以放任意个参数

5.2 return

在程序中一旦出现return语句,程序立即终止

在Python中,若要返回多个变量,只需用逗号将变量分隔即可,如:return x,y,z

5.3 序列解包

x,y = funcname()

a = 1

b = 2

c = 3

a, b, c =1, 2, 3

d = 1, 2, 3 or

print(type(d))

a, b, c = d

a, b, c =[1,2,3]

5.4   可变参数

在 Python 函数中,可以定义可变参数。可变参数就是传入的参数个数是可变的,可以是1个,2个 ··· 任意个,还可以是0个。

5.5  必须参数

在函数参数列表中所定义的参数

def add(x,y)括号中的x,y为形式参数

add(1,2)实际参数,实参

5.6   关键字参数

add(y=3, x=2) 使用关键字参数,也就是在参数列表中具体声明给每个参数传递的值

如果只传一个参数,如 add(x=2) 会报错,定义多少个形参,就要传递多少实参

与必须参数相比,两者的不同在于函数的调用上

5.7   calc 可变参数

def calc (*numbers):

sum = 0

for n in numbers:

sum = sum + n * n

return sum

print(clac(2,3,4,5))

l = [1,2,3,4]

t = (1,2,3,4)

print(clac(*l))

print(clac(*t))

Python基础-Week2相关推荐

  1. f是一个python内部变量类型,Python基础变量类型——List浅析

    Python使用list 一.list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示 ...

  2. python 等号报错_Python学习----Python基础

    Python基础 一.数据类型和变量 1.在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量. 例如: a =520# a是整数prin ...

  3. python基础——继承与派生、组合

    python基础--继承与派生 1 什么是继承: 继承是一种创建新的类的方式,在python中,新建的类可以继承自一个或者多个父类,原始类成为基类或超累,新建的类成为派生类或子类 1.1 继承分为:单 ...

  4. Python学习笔记1 Python基础

    第1章 Python基础 1.1 Python概述及版本介绍 1.Python是一种面向对象的解释型计算机程序设计语言(解释型语言源代码->解释器逐行解释每一句源代码) 2.优点:高级语言.可移 ...

  5. python基础---元组、字典、函数、文件、异常

    文章目录 python基础---元组.字典.函数.文件.异常 Tuple(元组) 常用操作 dict(字典) 函数 文件 异常 python基础-元组.字典.函数.文件.异常 Tuple(元组) tu ...

  6. 快速掌握Python的捷径-Python基础前传(1)

    文: jacky(朱元禄) 开文序 最近看新闻,发现高考都考Python了,随着人工智能的火热,学数据科学的人越来越多了!但对于数据行业本身来说,现象级的火热,这并不是什么好事.  方丈高楼平地起,无 ...

  7. Python培训教程之Python基础知识点梳理

    Python语言是入门IT行业比较快速且简单的一门编程语言,学习Python语言不仅有着非常大的发展空间,还可以有一个非常好的工作,下面小编就来给大家分享一篇Python培训教程之Python基础知识 ...

  8. python基础04

    python基础04 python2在编译安装时,可以通过参数 -----enable----unicode=ucs2 或 -----enable--unicode=ucs4 分别用于指定使用2个字节 ...

  9. 刻意练习:Python基础 -- Task12. 模块

    背景 我们准备利用17天时间,将 "Python基础的刻意练习" 分为如下任务: Task01:变量.运算符与数据类型(1day) Task02:条件与循环(1day) Task0 ...

  10. 刻意练习:Python基础 -- Task11. 魔法方法

    背景 我们准备利用17天时间,将 "Python基础的刻意练习" 分为如下任务: Task01:变量.运算符与数据类型(1day) Task02:条件与循环(1day) Task0 ...

最新文章

  1. containers文件夹可以删除吗_iOS14描述文件可以删除吗?iPhone删除iOS14描述文件方法...
  2. LiveVideoStackCon 2022 上海站 专题抢先看
  3. Xamarin.Forms 5.0 来了
  4. 【BZOJ3218】a+b problem (最小割 + 主席树)
  5. 指数函数中x的取值范围_谨记!高考数学中容易出错的几个地方
  6. php函数传引用,关于php:函数调用通过引用传递?
  7. vue中组件的data为什么是一个函数
  8. Typescript 下 Mongoose 外键类型外键数组类型定义类型保护联合类型理解
  9. VMware 安装提示缺少MicrosoftRuntime DLL 问题解决办法
  10. 小程序 云函数 python_小程序云函数
  11. 华3交换机配置命令【系统归纳】【方便好查】
  12. windows 7 RC(7106.0.090408)下载另附windows7驱动收集整合(5月31日更新)
  13. ckplayer快速入门
  14. MBR分区和GPT分区区别
  15. python 物理引擎 摩擦力_为什么单机游戏中的碰撞很不真实?物理引擎真的很难做到和现实一样吗?...
  16. 原来,嵌入式BI方案的核心差异在这,教你如何评估
  17. spark on k8s:apache YuniKorn(Incubating)的助力
  18. csgo如何增加人机数量及平衡_csgo怎么单机跟电脑打只有每队5人,怎么增大BOT
  19. OpenBot--DIY自动驾驶智能小车
  20. linux内核 猪头 作用,漫谈Linux内核哈希表(1)

热门文章

  1. CodeWarrior使用教程第一部分: 认识 CodeWarrior
  2. 最近项目上遇到的问题~
  3. java短语音聊天室_实现一个简单的语音聊天室(源码)
  4. mysql-8.0.16-winx64的最新安装教程
  5. Android应用调用第三方地图应用导航
  6. 《伸手系列》之分布式锁Redssion入门和源码解析
  7. pytorch---线性回归实现
  8. Edge浏览器出现兼容性问题且所有页面崩溃,包括设置均无法打开并访问的解决方法
  9. 计算机丢失mscvr,教大家计算机丢失Msvcr100.dll的解决方法
  10. 每日新知——MySQL索引类型及创建