Python3-输入与输出
2018-01-08 本文已影响81人
梦蕊dream
示例:判断字符串是否回文
示例代码:
def reverse(test):
return test[::-1]
# 该方法把字符串本末倒置返回
def is_palindrome(text):
return text == reverse(text)
str = input("Enter your text:")
if is_palindrome(str):
print("Yes")
else:
print("NO")
输出结果:
Enter your text:asd
NO
Enter your text:qwdwq
Yes
文件
创建一个file
类对象,并使用read
、readline
、write
等方法打开或使用文件,并对其进行读取和写入。当完成了文件需要调用close
方法,来告知代码我已操作完文件。
代码示例:
str = input("Enter your write str:")
if len(str) > 0:
# py3file.txt
f = open('/Users/let/Desktop/py3file.txt','a')
# r:阅读模式(默认),w:写入模式(会清空原有文件),a:追加模式(不会自动换行),t:文本模式,b:二进制模式
f.write(str)
f.close()
r = open('/Users/let/Desktop/py3file.txt')
while True:
line = r.readline()
if len(line) == 0:
break
print(line,end=' ')
r.close()
else:
print('not write any str in file')
结果输出:
Enter your write str:I write some str in 'py3file.txt' use python.
I write some str in 'py3file.txt' use python.
Pickle
Python 提供一个Pickle
的标准模块,可以将任意纯 python 对象存储进文件中,也可以对存储的对象进行取回操作,叫持久化存储对象。
示例代码:
import pickle
listfile = '/Users/let/Desktop/list.data'
# 存储文件路径及名称
list = ['Objective-c','Swift','Python','Java','C++','C']
# 文件内容
f = open(listfile,'wb')
pickle.dump(list,f)
# 转储对象到文件
f.close()
del list
file = open(listfile,'rb')
showList = pickle.load(file)
# 从文件中载入对象
print(showList)
输出结果:
['Objective-c', 'Swift', 'Python', 'Java', 'C++', 'C']
路径下会有一个"list.data"文件
通过pickle
模块的dump
来封装,通过pickle
模块的load
来拆封。
Unicode
把字符转换成“UTF-8”
示例代码:
# encoding=utf-8
# 程序最开端必须这么写
import io
f = io.open("/Users/let/Desktop/py3file.txt",'wt',encoding='utf-8')
f.write(u'write some str with Unicode utf-8')
f.close()
print(io.open('/Users/let/Desktop/py3file.txt',encoding='utf-8').read())
输出结果:
write some str with Unicode utf-8