码迷,mamicode.com
首页 > 其他好文 > 详细

记一次wxpy开发经历

时间:2019-09-27 01:29:03      阅读:89      评论:0      收藏:0      [点我收藏+]

标签:参数   sys   ret   import   调用   不能   pen   append   就是   

常在河边走,哪有不湿鞋,没想到搞这个花了半天时间。??

先介绍一下这个项目

  • 简单来说就是调用wxpy,然后通过微信调用一些我写的其他程序。看起来非常完美(打脸

    第一步,当然是import了。

    就是调用我写的另一个库

    定义模块的参数变量的传递是有限制的。

    如果函数收到的是一个可变对象(比如字典或者列表)的引用,
    就能修改对象的原始值--相当于通过“传引用”来传递对象。如果函数收到的是一个不可变对象(比如数字、字符或者元组)的引用,
    就不能直接修改原始对象--相当于通过“传值‘来传递对象。

也就是说如果参数是字符串,那么在函数里作的修改是不会被传递出来的,比如说c="123"。经过我定义的函数laji(c)c变成了“123哇哦”。当然在只是在函数里面c="123哇哦"。举个例子吧
我定义一个函数

def hello(a):
    a+="哇哦"
    return a

然后暂时把他放到放库的地方,让他可以被调用。

import sys
sys.path.append("wx.py") #哦,对了这个文件名字叫wx.py

然后,调用它

>> import wx
>> c="123"
>> wx.hello(c)
'123哇哦'
>> print(c)
123

看到没有,c的值没有发生改变。原因就是因为这个??

如果函数收到的是一个可变对象(比如字典或者列表)的引用,
就能修改对象的原始值--相当于通过“传引用”来传递对象。如果函数收到的是一个不可变对象(比如数字、字符或者元组)的引用,
就不能直接修改原始对象--相当于通过“传值‘来传递对象。

然后我修改一下wx.py

def hello(a):
    a.append("哇哦")
    return a

然后把变量换成是列表

>> import wx
>> c=["123"]
>> wx.hello(c)
['123', '哇', '哦']
>> print(c)
['123', '哇', '哦']

(唉,这脸打的,啪啪的
明天再写

记一次wxpy开发经历

标签:参数   sys   ret   import   调用   不能   pen   append   就是   

原文地址:https://www.cnblogs.com/sogeisetsu/p/11595258.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!