V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
leartang
V2EX  ›  Python

Python 调用函数的问题

  •  
  •   leartang · 2019-05-29 21:38:33 +08:00 via Android · 1775 次点击
    这是一个创建于 2008 天前的主题,其中的信息可能已经有所发展或是发生改变。

    a.py

    data ="XXXXXXXX"

    def aa():

     print("LLLLLLL"+ data)
    

    aa()


    b.py

    from a import aa

    data ="111111111"

    aa()

    执行结果:

    LLLLLLLXXXXXXXX

    LLLLLLLXXXXXXXX

    为什么 b 里面赋值没用,而且单写一条 from a import aa 也会执行一次,有没有 PY 大佬解答一下...3.7.3

    8 条回复    2019-05-30 16:17:10 +08:00
    boom7
        1
    boom7  
       2019-05-29 21:45:20 +08:00   ❤️ 1
    a.py 里的 data 和 b.py 里的 data 不是同一个 data,就好像你和隔壁小明都叫小明,你妈打了你一顿你问为什么隔壁小明屁股没肿?
    leartang
        2
    leartang  
    OP
       2019-05-29 21:51:10 +08:00 via Android
    @boom7 那要怎么做才能让隔壁的小明一起肿😂
    decemberpei
        3
    decemberpei  
       2019-05-29 21:52:23 +08:00 via iPhone
    1. a 里面的 data 跟 b 里面的 data 是两个变量,只在各自的模块中有效,所以你根本没赋值,
    2. import 的时候本来就会执行模块的代码
    ksedz
        4
    ksedz  
       2019-05-29 21:54:11 +08:00
    你可以理解为 aa() 执行的时候是跳到了模块 a 执行的 aa,而不是把 aa 拿过来执行
    boom7
        5
    boom7  
       2019-05-29 21:55:18 +08:00
    @leartang #2
    a 中修改为:
    def aa(data):
    print("LLLLLLL"+ data)

    b 中的调用修改为 aa("111111111")
    leartang
        6
    leartang  
    OP
       2019-05-29 22:09:00 +08:00 via Android
    @boom7 感谢大佬
    cjq8z
        7
    cjq8z  
       2019-05-30 12:30:02 +08:00 via Android
    去网上找本新手教程看看,比如«Python 从入门到实践»,网上有 PDF 版,按照书本里面内容,把 Python 内容过一边,并把书籍里面的例子过一遍以及后面那三个项目搞搞。学完书籍的内容,你就可以知道 Python 的一些基础知识以及注意点。

    也不用跑来 V 站上问 Python 的函数调用这样非常基础的问题。
    limuyan44
        8
    limuyan44  
       2019-05-30 16:17:10 +08:00 via Android
    这不是正常的吗。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5549 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 01:27 · PVG 09:27 · LAX 17:27 · JFK 20:27
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.