如何保存输入到一个txt文件,在linux命令行输入

xqkwcwgp  于 2023-03-01  发布在  Linux
关注(0)|答案(2)|浏览(158)

我试图在Python中创建一个联系人列表。我试图保存输入到一个txt.and当用户想从列表中查找联系人时,我想从程序中读取txt文件并回答用户。谢谢
我对互联网的研究很少,我发现:

with open('list','w') as f:
    f.write()

这个技术。但是我是python的新手,谢谢你的帮助。

import optparse

def contact_add():
    contact_list = optparse.OptionParser()
    contact_list.add_option("-n","--name",dest="name",help="name to enter")
    contact_list.add_option("-t","--telephone",dest="telephone",help="tel no to enter")

    with open('list','w') as f:
        return f.write(contact_list.name,contact_list.telephone)

命令行:

python contact.py -n hanter -t 0555

这是启动时的输出:

Traceback (most recent call last):
  File "contact.py", line 13, in <module>
    contact_add()
  File "contact.py", line 11, in contact_add
    return f.write(contact_list.name,contact_list.telephone)
AttributeError: 'OptionParser' object has no attribute 'name'
iszxjhcz

iszxjhcz1#

在解析的参数可用之前,需要在参数解析器中调用.parse_args()(在本例中为contact_list)。
但是optparseis deprecated和您应该转到argparse,其工作原理基本相同。

(options, arguments) = contact_list.parse_args()
    with open('list','w') as f:
        f.write(options.name, options.telephone)
epfja78i

epfja78i2#

contact_list是OptionParser对象。您还没有实际解析选项。请尝试以下操作:

import optparse

def contact_add():
    contact_list = optparse.OptionParser()
    contact_list.add_option("-n","--name",dest="name",help="name to enter")
    contact_list.add_option("-t","--telephone",dest="telephone",help="tel no to enter")
    parsed_contacts, _ = contact_list.parse_args()

    with open('list','w') as f:
        f.write(parsed_contacts.name+"\t"+parsed_contacts.telephone)

contact_add()
  • contact_list.parse_args()解析参数。
  • 您不需要return
  • write采用单个参数;我用一个选项卡将两者连接起来

正如@Eular的评论所说,optparse已经过时,您应该使用argparse。

相关问题