您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python函数混乱

5b51 2022/1/14 8:23:19 python 字数 3047 阅读 552 来源 www.jb51.cc/python

我正在学习 Python.我有一个函数readwrite(filename,list). filename的类型为string. list是一个包含要在文件中重写的字符串的列表. 我有一个简单的函数调用,如下所示: fname = 'hello.txt' readwrite('xx'+fname, datalist) 我面临的问题是,当我在函数定义中打印文件名参数值时,我得到hello.txt而不

概述

我有一个简单的函数调用,如下所示:

fname = 'hello.txt'
readwrite('xx'+fname,datalist)

我面临的问题是,当我在函数定义中打印文件名参数值时,我得到hello.txt而不是xxHello.txt – 这是一个奇怪的事情,当我从commadline做同样的事情时我没想到,对于一个示例函数,它工作正常.
我想知道我在那里失踪了什么.

这是代码

def readwrite(fileName,list):
    print 'arg file=',filename
    curdir = os.getcwd();
    fullpath = os.path.join(curdir,filename);
    print('full path calculated as: '+fullpath);
    fileExist = os.path.exists(fullpath);
    if(fileExist):
        print 'file exists and opening in \'arw\'mode'
        fiel = open(fileName,'arw')    # valid only if exists
    else:
        print "file doesnt exist; opening in \'w\'mode"
        fiel = open(fileName,'w')      # if it doesnt exist,we cant open it for reading as nothing to read.

    for line in list:
        fiel.write('\n'+line)

    print 'position of new pointer = ',fiel.tell()

调用函数的主代码

filename = 'put.txt'
strList = ['hello','how','are','you']
readwrite(('xx'+filename),strList);

– fn def print’arg file =’中的第二行,filename打印hello.txt而不是xxHello.txt
这是我的困惑,为什么它表现得很好,或者我做错了什么.

def readwrite(fileName,filename

发生的事情是第二行选择名为filename的全局变量而不是名为fileName的函数参数.

总结

以上是编程之家为你收集整理的Python函数混乱全部内容,希望文章能够帮你解决Python函数混乱所遇到的程序开发问题。


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶