Python 输入和输出.md

Python 输入和输出

希望获取用户的输入内容,并向用户打印出一些返回的结果。
实现用户输入一段字符串,并向用户表打印出是否为回文。

def reverse(text):
    return text[::-1]

def is_palindrome(text):
    return text == reverse(text)

something = input("Enter text:")
if is_palindrome(something):
    print("yes,it is a palindrome")
else:
    print("no,it is not a palindrome")

文件

可以通过创建一个属于file的对象并适当使用它的read,readline,write方法来打开或者使用文件,并对它们进行读取和写入。

open函数

语法:

file object = open(file_name,[access_mode],[buffering])
模式 描述
r 只读模式,为默认模式,文件指针放在开头
rb 只能以二进制模式读取,为默认模式,文件指针被放置在开头
r+ 读和写文件,文件指针被放置在开头
rb+ 用于读取和写入二进制格式的文件文件指针被置于开头
w 打开一个文件只写,如果文件存在则覆盖现有文件,如果不存在则创建写入新文件
wb 打开一个文件只能以二进制格式写入,文件存在则覆盖现有文件,不存在创建写入新文件
w+ 用于读取和写入文件,文件存在则覆盖现有文件,不存在则创建新文件
wb+ 打开用于写入和读取二进制格式的文件,文件存在则覆盖现有文件,不存在则创建新文件
a 打开用于追加的文件,文件指针是在该文件的末尾,则为追加模式,如果该文件不存在他会创造用于写入的新文件
ab 打开文件用于二进制格式追加,文件指针是在该文件的末尾,则为追加模式,如果该文件不存在他会创造用于写入的新文件
a+ 打开文件用于读取和追加,文件指针是在该文件的末尾,则为追加模式,如果该文件不存在他会创造用于读写操作的新文件
ab+ 打开用于读取和追加的二进制格式的文件,文件指针是在该文件的末尾,则为追加模式,如果该文件不存在他会创造用于读写的新文件

写入一个文件,读取每一行,并打印出来

poem = '''\
Programing is fun 
When the work is done
if you wanna make your work also fun:
    use python
'''

f = open('poem.txt','w')
f.write(poem)
f.close()
f = open('poem.txt')
while True:
    line = f.readline()

    if len(line) == 0:
        break

    print(line,end='')

f.close()

Pickle

可以通过pickle将任何纯python对象储存到一个文件中,并在稍后将其取回。

import pickle
shoplistfile = 'shoplist.data'

shoplist = ['apple','mango','carrot']
f = open(shoplistfile,'wb')
pickle.dump(shoplist,f)
f.close()

del shoplist

f = open(shoplistfile,'rb')

storedlist = pickle.load(f)

print(storedlist)

要想将一个对象存储到一个文件中,首先需要通过open以写入二进制模式打开文件,然后再调用pickle模块中的dump函数。

Unicode

当我们阅读或写入某一文件或当我们希望与互联网上的其它计算机通信时,我们需要将我们
的 Unicode 字符串转换至一个能够被发送和接收的格式,这个格式叫作“UTF-8”。

import io
f = io.open("a.txt","wt",encoding="utf-8")
f.write(u"Imagine non-English language here")
f.close()
text = io.open("a.txt",encoding="utf-8").read()
print(text)

你可能感兴趣的:(Python)