zoukankan      html  css  js  c++  java
  • Python输入和输出

    在很多时候,你会想要让你的程序与用户(可能是你自己)交互。你会从用户那里得到输入,然后打印一些结果。我们可以分别使用raw_input和print语句来完成这些功能。对于输出,你也可以使用多种多样的str(字符串)类。例如,你能够使用rjust方法来得到一个按一定宽度右对齐的字符串。利用help(str)获得更多详情。另一个常用的输入/输出类型是处理文件。创建、读和写文件的能力是许多程序所必需的,我们将会在这章探索如何实现这些功能。

    1.使用文件

    #!/usr/bin/python
    # Filename: using_file.py
    poem = '''
    Programming is fun
    When the work is done
    if you wanna make your work also fun:
    use Python!
    '''
    f = file('poem.txt', 'w') # open for 'w'riting
    f.write(poem) # write text to file
    f.close() # close the file
    f = file('poem.txt')
    # if no mode is specified, 'r'ead mode is assumed by default
    while True:
            line = f.readline()
            if len(line) == 0: # Zero length indicates EOF
                    break
            print line,
    # Notice comma to avoid automatic newline added by Python
    f.close() # close the file
    

    运行结果

    # ./using_file.py
    Programming is fun
    When the work is done
    if you wanna make your work also fun:
    use Python!
    

    2.储存与取储存

    #!/usr/bin/python
    # Filename: pickling.py
    import cPickle as p
    #import pickle as p
    shoplistfile = 'shoplist.data'
    # the name of the file where we will store the object
    shoplist = ['apple', 'mango', 'carrot']
    # Write to the file
    f = file(shoplistfile, 'w')
    p.dump(shoplist, f) # dump the object to a file
    f.close()
    del shoplist # remove the shoplist
    # Read back from the storage
    f = file(shoplistfile)
    storedlist = p.load(f)
    print storedlist
    

    运行结果

    # ./pickling.py
    ['apple', 'mango', 'carrot']
    

    为了在文件里储存一个对象,首先以写模式打开一个file对象,然后调用储存器模块的dump函数,把对象储存到打开的文件中。这个过程称为 储存 。接下来,我们使用pickle模块的load函数的返回来取回对象。这个过程称为 取储存 。

  • 相关阅读:
    input填入字符会出现黄色
    安装Scrapy时出现问题scrapy unicodedecodeerror ascii codec cant decode byte 0xd1 in position
    SVN 出现:Previous operation has not finished; run 'cleanup' if it was interrupted。
    Myeclipse小技巧
    好的开发网站
    BZOJ 1968
    BZOJ 1010
    BZOJ 1015
    BZOJ 3875
    BZOJ 2705
  • 原文地址:https://www.cnblogs.com/oskb/p/5123400.html
Copyright © 2011-2022 走看看