前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【python】函数详解

【python】函数详解

作者头像
20岁爱吃必胜客
发布2023-02-26 16:49:03
3260
发布2023-02-26 16:49:03
举报
文章被收录于专栏:进步集进步集

文章目录

基本函数-function

代码语言:javascript
复制
if '__main__' == __name__:
    a=100
    print(id(a))

模块的引用

代码语言:javascript
复制
import ku as liebiao
liebiao=[1,2,34,5,6,8,11]
diaoyong=bianle.maopao(liebiao) #只可以用新的变量名,更改库名
print(diaoyong)

模块搜索路径

先搜当前文件夹内有没有,再去指定路径找

代码语言:javascript
复制
import sys
print(f"sys.path: {sys.path}")

'''
['/Users/mac/Desktop/video/python/day16', 
'/Users/mac/Desktop/video/python', 
'/Applications/anaconda3/lib/python36.zip', 
'/Applications/anaconda3/lib/python3.6', 
'/Applications/anaconda3/lib/python3.6/lib-dynload', 
'/Applications/anaconda3/lib/python3.6/site-packages', 
'/Applications/PyCharm.app/Contents/helpers/pycharm_matplotlib_backend']
'''

不定长参数

python自定义函数中有两种不定长参数, 第一种是*XXX,在传入额外的参数时可以不用指明参数名,直接传入参数值即可。 第二种是**XXX,这种类型返回的是字典,传入时需要指定参数名

加了一个星号 :不定长参数会以元组(tuple)的形式导入存放所有未命名的变量参数。 加了两个星号 :参数会以字典的形式导入存放已命名的变量参数

代码语言:javascript
复制
def water(name,*args):
    print(name)
    for i in args:
        print(i)

if '__main__' == __name__:
    water("donggua ",1,2,3,4,5,600)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

参数传递

传递元组

代码语言:javascript
复制
def f(aaa):
    print(aaa)
if '__main__' == __name__:
    f((123,1,2,3))

传递字典

代码语言:javascript
复制
def f(aaa):
    print(aaa)
if '__main__' == __name__:
    f({"123":1})

缺陷,容易改了原始数据,可以用copy()方法避免

代码语言:javascript
复制
def f(aaa):
    print(aaa)
if '__main__' == __name__:
    f({"123":1}.copy())

变量作用域

全局变量

代码语言:javascript
复制
global j

闭包closure

介于全局变量 局部变量 之间

nonlocal 用了这个声明闭包变量才能在内部修改闭包变量

匿名函数lambda表达式

代码语言:javascript
复制
if '__main__' == __name__:
    a=lambda x, y: x + y
    print(a(1,5))
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-02-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 基本函数-function
  • 模块的引用
    • 模块搜索路径
    • 不定长参数
    • 参数传递
      • 传递元组
        • 传递字典
          • 缺陷,容易改了原始数据,可以用copy()方法避免
          • 变量作用域
            • 全局变量
              • 闭包closure
                • nonlocal 用了这个声明闭包变量才能在内部修改闭包变量
                • 匿名函数lambda表达式
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档