Python学习第九天——《A Byte of Python》笔记 9

Python学习第九天——《A Byte of Python》笔记 9_第1张图片
Python

输入和输出

编程有时候需要和用户交互,比如让用户输入内容然后打印结果给他,我们可以用input()函数和print函数。
输出的话,我们可以用str类中的很多方法,比如用rjust方法获得一个正符合特殊长度的字符串。更多的细节可以看help(str)

Input from user (用户输入)

我们让用户输入一个文本,然后判断是否是回文(正反读都一样,如madam,radar)

def reverse(text):
    return text[::-1]
def is_palindrome(text):
    return text==reverse(text)
something=input("Please enter text:")
if is_palindrome(something):
    print("It's palindrome!")
else:
    print("It's not palindrome.")

这样当用户输入一个回文时打印It's palindrome!,否则打印It's not palindrome.

File(文件)

我们可以在文件类中通过读、写等相应方法去打开一个文件去读取或写入,最后要用close方法关闭。

poem='''\
Programming is fun
When the works is done
if you wanna make your work also fun
   use Python!
   '''

#open fow 'w'riting
f=open('peom.txt','w')
#write text to file
f.write(poem)
#close the file
f.close()

#if no mode is spesfied,'r'ead mode is assumed by default
f=open('peom.txt')
while True:
    line=f.readline()
    #Zero lingth indicates EOF(End Of File)
    if len(line)==0:
        break
    print(line,end='')
#close the file
f.close()

Output:
Programming is fun
When the works is done
if you wanna make your work also fun
use Python!

文件打开的默认参数是‘r’(读),另外还有‘w’(写)和‘a’(添加),同时分文本形式(‘t’)和字节形式(‘b’)

Pickle(腌)

Python提供了Pickle的标准模块,可以用来将任意的Python对象放入一个文件中,需要时再取出,这叫持久的储存对象。

import pickle

# The name of the file where we will store the object
shoplistfile = 'shoplist.data'
# The list of things to buy
shoplist = ['apple', 'mango', 'carrot']

# Write to the file
f = open(shoplistfile, 'wb')
# Dump the object to a file
pickle.dump(shoplist, f)
f.close()

# Destroy the shoplist variable
del shoplist

# Read back from the storage
f = open(shoplistfile, 'rb')
# Load the object from the file
storedlist = pickle.load(f)
print(storedlist)

Output:
['apple', 'mango', 'carrot']
在文件里储存一个对象,首先以二进制模式打开一个file 对象,然后调
用pickle 模块的dump 函数,这个过程称为pickling 。
接下来,我们用pickle 模块的返回对象的load 函数重新取回对象。这个过程称之
为unpickling 。

Unicode

不过英文或者非英文,我们都可以用Unicode来表述出来。Python3里面已经默认存储字符串变量在Unicode,但Python2涉及到非英文的,要在前面加‘u’来提示使用Unicode。
当数据发送到因特网时,我们需要用二进制,这样计算机才容易懂。我们称转换Unicode码到二进制为encoding(编码),一个比较流行的编码是UTF-8。我们可以用一个简单的关键字语法来读写我们的open函数。

# encoding=utf-8
import io

f = io.open("abc.txt", "wt", encoding="utf-8")
f.write(u"Imagine non-English language here")
f.close()

text = io.open("abc.txt", encoding="utf-8").read()
print(text)

下一步要接触“exceptions”了,这几章的内容是是而非,感觉掌握了,又没有非常熟练,工作忙又沉不下心来。

你可能感兴趣的:(Python学习第九天——《A Byte of Python》笔记 9)