精华内容
下载资源
问答
  • Educoder题目:Python入门之函数调用答案解析.md
  • python函数调用另外的一个函数

    千次阅读 2020-08-20 17:49:14
    1、使用场景:一个发送短信的函数,一个登陆的函数,登陆前需要调用发送短信 def send_message(ip): """1、发送短信""" url = "http://" + ip + ".123.com/api/sms/send" print(url) params = { "mobile": ...

    1、使用场景:一个发送短信的函数,一个登陆的函数,登陆函数需要调用发送短信

    def send_message(ip):
        """1、发送短信"""
    
        url = "http://" + ip + ".123.com/api/sms/send"
        print(url)
        params = {
            "mobile": "188****",
            "type": "1"}
        headers = {'content-type': 'application/json'}
    
        ret = requests.post(url, data=json.dumps(params), headers=headers)
        ret_json = json.loads(ret.text)
    
    
    def login(ip="exp", account="188***"):
        """2、点击登陆"""
    
        send_message(ip)
        time.sleep(3)
        url = "http://" + ip + ".123.com/api/user/login"
        print(url)
        # url_login = "http://dev.123.com/api/user/login"
        params = {
            "account": account,
            "code": "123456"}
        headers = {'content-type': 'application/json'}
    
        ret = requests.post(url, data=json.dumps(params), headers=headers)

    解决方法:在login函数中直接写send_message(ip)就是调用了 发送短信的函数

    2、函数中默认参数

    如果是在发送短信的send_message(ip)函数中加了默认参数,注意调用send_message()时的区别

    (1)send_message()不写ip,使用默认值

     

     

    (2)send_message()写ip,接收传参

    (3)send_message()写ip固定值,使用固定值,不接收传参

     

    展开全文
  • python 函数调用问题

    千次阅读 2018-06-15 22:17:11
    本文主要解决python调用其他文件里的函数问题。 先将要调用函数写在一个文件里,以def开头。如: #coding=utf-8 #存储一些常用的图像操作 import os from PIL import Image from numpy import * from pylab ...

    本文主要解决python调用其他文件里的函数问题。

    1. 先将要调用的函数写在一个文件里,以def开头。如:
    #coding=utf-8
    #存储一些常用的图像操作
    import os
    from PIL import Image
    from numpy import *
    from pylab import *
    def get_imlist(path):
    
        return [os.path.join(path,f) for f in os.listdir(path) if f.endswith('.jpg')]

    注意:要调用的函数文件里也需要写上import***
    2. 调用函数时,程序开始写上from imtools import get_imlist,如果是有参函数则写入参数。即可实现调用。

    展开全文
  • 1、python函数的应用一般需要:先定义、后调用: 2、如果函数定义在调用之后,执行将报错: 3、函数中调用函数不受此限制: 4、但是语句对函数调用,必须在函数调用之后,包括直接调用的函数调用的其他函数也必须...
  • 由于要重构项目的部分代码,要整理好主要的函数调用关系,不想自己看代码慢慢画出结构,想找出一种通用的,节省人力的方法得出函数间的调用关系图,于是发现以下几个工具。(内网没装好graphviz,还没真正用上) ...

     

     

    由于要重构项目的部分代码,要整理好主要的函数调用关系,不想自己看代码慢慢画出结构,想找出一种通用的,节省人力的方法得出函数间的调用关系图,于是发现以下几个工具。(内网没装好graphviz,还没真正用上)

    主要分下面三个模块了解一下python中如何生成函数关系调用图:

    1、graphviz(Graph Visualization Software-图形可视化软件)

    2、pycallgraph(创建python的可视化图形)

    3、objgraph(查看python对象图)


    1、graphviz

     graphviz 是一个图形可视化软件,可使用dot文件生成关系图。

    1.1、下载安装

    官网下载安装包进行安装,有Linux和Windows版本。

    或者直接用命令安装: sudo apt-get install graphviz

    1.2、使用

    安装后可使用dot命令将dot文件生成图片:

    dot -Tpng *.dot -o *.png

    更多用法可参考官网文档。

    http://www.graphviz.org/Home.php

    还有一个pygraphviz 不要和 下面介绍的pycallgraph混淆了。pygraphviz是用Python封装了graphviz使其可用python编写。

    pygraphviz官网:http://pygraphviz.github.io/index.html


     2、pycallgraph

     pycallgraph 可以创建python函数关系可视化图形,因为其依赖于dot命令,需要先安装 graphviz。

    2.1、下载安装

    官网源码安装或使用pip:

    pip install pycallgraph

    2.2、使用

    命令行使用(没试过):

    pycallgraph graphviz -- ./mypythonscript.py

    代码中使用:

    from pycallgraph import PyCallGraph
    from pycallgraph.output import GraphvizOutput with PyCallGraph(output=GraphvizOutput()): code_to_profile()

    例子:

     1 #!/usr/bin/env python
     2 '''
     3 This example demonstrates a simple use of pycallgraph.
     4 '''
     5 from pycallgraph import PyCallGraph
     6 from pycallgraph.output import GraphvizOutput
     7 
     8 
     9 class Banana:
    10 
    11     def eat(self):
    12         pass
    13 
    14 
    15 class Person:
    16 
    17     def __init__(self):
    18         self.no_bananas()
    19 
    20     def no_bananas(self):
    21         self.bananas = []
    22 
    23     def add_banana(self, banana):
    24         self.bananas.append(banana)
    25 
    26     def eat_bananas(self):
    27         [banana.eat() for banana in self.bananas]
    28         self.no_bananas()
    29 
    30 
    31 def main():
    32     graphviz = GraphvizOutput()
    33     graphviz.output_file = 'basic.png'
    34 
    35     with PyCallGraph(output=graphviz):
    36         person = Person()
    37         for a in xrange(10):
    38             person.add_banana(Banana())
    39         person.eat_bananas()
    40 
    41 
    42 if __name__ == '__main__':
    43     main()
    View Code

    运行代码,生成basic.png:

    官网:

    http://pycallgraph.slowchop.com/en/master/index.html


     3、objgraph

    ( objgraph 和函数关系调用没什么关系,但是由于也使用dot,所以一并介绍。)

    objgraph模块 一般用于分析python对象相关问题,如内存泄漏。

    3.1、下载安装

    可官网源码安装,也可使用pip安装:

    pip install objgraph

    3.2、使用

    生成图片:

    更多用法可参考官网:

    http://mg.pov.lt/objgraph/

    转载于:https://www.cnblogs.com/GO-NO-1/p/7155684.html

    展开全文
  • 此内容来自于沙行勉的《计算机科学导论-以python为舟》函数调用的基本概念:程序语言中的函数与高中数学中的函数相似。高中函数,假设要实现z+x*y²这个计算。对于乘法计算,定义一个函数f(x,y)=x*y²,他有两个参数...

    此内容来自于沙行勉的《计算机科学导论-以python为舟》

    • 函数调用的基本概念:程序语言中的函数与高中数学中的函数相似。高中函数,假设要实现z+x*y²这个计算。对于乘法计算,定义一个函数f(x,y)=x*y²,他有两个参数x和y。计算x²+y²后得到一个值,作为函数的返回值,赋给f(x,y)。这样就可以用z+f(x,y)来表示上面的运算,对于f(x,y)运算,将会调用到已经定义的函数f(x,y)=x*y²。程序语言中的函数也有参数和返回值,以及定义与调用。程序中的函数就是将一些程序语句结合在一起的部件,可以多次的调用。
    • 函数中的变量:

    局部变量:函数中的局部变量只能被这个函数访问,不能被其他函数访问。

    全局变量:在函数之外被赋值的变量。

    a = 10
    def fun():
        a = 20
        print(a)    #函数内a内局部变量
    fun()
    print(a)        #函数外a为全局变量复制代码

    • 局部变量的判断:
    1. 不出现在global语句中 (global语句为申明某个变量为局部变量)
    2. 出现在函数参数中
    3. 出现在函数参数语句中的等号左边

    • python函数调用:

    python进行函数调用时,参数的传递都是通过赋值的方式。

    def func(L1):       #定义一个func()函数,参数为L1
        L1.append(1)    #对L1采用.append()方法,结果为[2,1],并且改变全局变量L的值(因为L1和L都指向同一个heap)
    L = [2]             
    func(L)             #func()函数运行,参数为L,进行赋值传递给func()函数中的局部变量L,
    print(L)            func()函数执行完后,局部变量L1指向全局上的值[2,1],L也指向这个全局上的值[2,1](L1与L指向同一块内存区域)复制代码

    其中列表做参数时,传递的是指针,函数中的参数指向的内容为全局变量区域,成为heap。

    stack-栈,heap-堆

    注意事项:

    1. 列表的append、pop、remove等方法,以及给L[i]赋值,对L[i]使用增强赋值等,都会修改列表L所指向的内容,进而对全局产生影响。
    2. 列表的一般合并,或者使用列表的分片(即L[i:j]这种形式)都不会对全局的列表L产生影响。合并与分片的操作会产生新的列表,赋值到一块新的内存区域(heap)上。

    • return(L)返回L的指针:

    def F1():
        L = [3,2,1,]    #L是局部变量,而[3,2,1]是在栈的外面heap上。
        return(L)
    L = f1() 
    print("L=",L)复制代码

    全局变量L调用f1()函数,f1()函数中的局部变量L经return返回到函数外的全局变量L,此时局部变量L和全局变量L都指向同一个heap。

    • L做函数参数传递:

    def F2():                  #参数L是个指针,是存放在栈上的局部变量
        L = [2,1]              #此语句将函数L又赋值为[2,1]
        return(L)              #return(L)将局部变量L的值赋值给了主调函数的全局变量(例如L = F2(),L是主调函数,F2()则是被调函数)
    def F3():               
        L.append(1)            #L指向的是原来的全局内容,会改变全局L
        L[0] = 0
    L = [3,2,1]               
    L = F2(L);print("L=",L)   
    F3(L);print("L=",L)         #调用F3(L)后,L的全局已经被改变复制代码

    • 好的编程习惯:
    1. 尽量避免在函数中使用全局变量
    2. 若在函数中需要使用外部的变量,使用参数传递。
    3. 对函数调用中mutable变量(列表、字典等)



    转载于:https://juejin.im/post/5bd58d266fb9a05cf03a305c

    展开全文
  • python函数调用的四种方式

    千次阅读 2017-10-09 10:40:04
    #标准调用 normal_invoke(1, 2) #关键字调用 keyword_invoke(y=1, x=2) #非关键字可变长参数(tuple) normal_tuple_invoke(1, 3, 'xyz', 123.4) #关键字可变长参数(dict) keyword_dict_invoke(y=1, x=2, arg2='def', ...
  • 函数的传值到底是值传递还是引用传递,要分情况: 不可变参数用值传递: 像整数和字符串这样的不可变对象,是通过拷贝进行传递的,因为你无论如何都不可能在原处改变 不可变对象 可变参数是引用传递的: 比如像...
  • 主要介绍了python如何实现异步调用函数执行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 如何查看Python函数调用图 Ubuntu

    千次阅读 2017-12-07 14:49:42
    说明:有时候想看看Python函数调用图,此时  pycallgraph 就显示出他的用途了。 安装 pycallgraph pip install pycallgraph 安装 graphviz,使用dot -v 验证安装,记得将 /usr/bin/ 设置到 PATH路径 ...
  • 主要介绍了Python如何在main中调用函数内的函数方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • python函数调用返回两个或多个变量

    万次阅读 2018-03-10 10:22:45
    如果返回列表,其实质是返回列表引用,列表引用本可以找到数据本身,但由于回收机制,数据本身很可能已经被回收了,所以用列表返回并不可行===========update==========python中用列表也可以。。。...
  • *args和**kwargs都是函数定义时的形参,用来接收未知个数的实参(可以为0个)。 *args将多余的变量以元组的形式接收。 **kwargs将多余的命名参数(即带有变量名的实参)以字典的形式接收,其中字典的键为命名参数的...
  • 主要介绍了Python如何调用JS文件中的函数的相关知识点总结,有兴趣的朋友们跟着学习下。
  • python函数调用

    千次阅读 2018-06-22 04:18:38
    python函数要先定义,然后才能调用,也就是说在python代码中要先将函数定义,然后才能是主程序。
  • 今天小编就为大家分享一篇python调用matlab的m自定义函数方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • python打印函数调用关系图

    千次阅读 2018-08-10 21:15:54
    /usr/bin/env python # -*- coding: utf-8 -*- from pycallgraph import PyCallGraph from pycallgraph import Config from pycallgraph.output import GraphvizOutput import sys # sys....
  • 这篇文章主要介绍了python函数声明和调用定义及原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 函数是指代码片段,可以重复调用,比如我们前面文章...
  • 相关课程参考python函数闭包函数的嵌套概念及特点:1、一个函数里面又调用了另外一个函数,这就是所谓的函数嵌套调用。2、如果函数A中,调用了另外一个函数B,那么先把函数B中的任务都执行完毕之后才会回到上...
  • python函数的定义与调用

    千次阅读 2019-03-29 22:25:51
    函数的定义与调用 1、定义函数 定义函数的格式如下: def函数名(): 代码 注:python文件名一定不要取为test.py 标出的两个文件,虽为空文件,但一定不要去删除 2.不定长参数 有时可能需要一个函数能...
  • 需要的题量多的话建议购买付费专栏(包含上百道题目答案,并持续更新中)
  • Python:几种函数调用方式

    万次阅读 2018-06-14 14:46:07
    第一种:class内部def函数与def函数之间的调用test_getIdentify 函数调用test_getLastuser函数的返回值,只要在test_getIdentify 函数内写上self.test_getLastuser()即可class testlogin(unittest.TestCase): ...
  • 今天和大家分享一下Python限制函数调用次数的实例,对Python感兴趣的小伙伴就随着小编一起来了解一下吧。 Python限制函数调用次数的实例 #newtest.py #!/usr/bin/env python #-*- coding:utf-8 -*- import ...
  • Python函数的定义及其调用

    万次阅读 多人点赞 2018-07-19 13:00:01
    所谓函数,就是把具有独立功能的代码块组织成为一个小模块,在需要的时候调用 函数的使用包含两个步骤 1.定义函数–封装独立的功能 2.调用函数–享受封装的成果 函数的作用:在开发时,使用函数可以提高编写的...
  • 如果函数调用出错,一定要学会看错误信息! 2 定义函数 如果没有return语句,函数执行完毕后也会返回结果,只是结果为None。return None可以简写为return。 在Python交互环境中定义函数时,注意Python会出现......
  • 1、python函数的应用一般需要:先定义、后调用: 2、如果函数定义在调用之后,执行将报错: 3、函数中调用函数不受此限制: 4、但是语句对函数调用,必须在函数调用之后,包括直接调用的函数调用的其他函数...
  • 主要介绍了Python实现调用另一个路径下py文件中的函数方法,结合实例形式总结分析了Python针对不同文件夹中py文件调用操作的处理技巧与相关注意事项,需要的朋友可以参考下
  • python中一个函数调用另一个函数中的变量

    万次阅读 多人点赞 2020-11-30 19:16:53
    我们在一个函数func2()中想使用另一个函数func1()中的变量,通常会使用返回值的方法,但是在调用的时候,也会将func2()整体运行一遍: 如果func2()函数体的运行对于func1()取返回值没有影响则完全可以,但是如果...
  • python 查看函数调用

    千次阅读 2019-05-15 17:30:14
    sys._getframe()得到如下对象: typedef struct _frame { PyObject_VAR_HEAD ... /* 调用者的帧 */ PyCodeObject *f_code; /* 帧对应的字节码对象 */ PyObject *f_builtins; /* 内置名字...
  • python函数间相互调用案例

    千次阅读 2019-08-31 20:45:22
    python函数间相互调用案例 ‘’‘案例一: 登录淘宝账号,并且将商品加入到购物车中(两个函数间的调用)’’’ islogin = False #用于判断用户是否登录的变量 默认是没有登录 #定义加入购物车函数 def add_...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 585,496
精华内容 234,198
关键字:

python函数调用

python 订阅