原始代码:
import sys
script,encoding,error = sys.argv
def main(language_file,encoding,errors):
line = language_file.readline()
if line:
print_line(line,encoding,errors)
return main(language_file,encoding,errors)
def print_line(line,encoding,errors):
next_lang = line.strip()
raw_bytes = next_lang.encode(encoding,errors = errors)
cooked_string = raw_bytes.decode(encoding,errors = errors)
print(raw_bytes,"<===>", cooked_string)
languages = open(“languages.txt”, encoding = “utf-8”)
main(languages,encoding,erro
生僻代码:
1.strip()
strip()用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
注意:该方法只能删除开头或结尾的字符,不能删除中间部分的字符。
实例:
结果:
2.encode()函数
描述:以指定的编码格式编码字符串,默认编码为’utf-8’
语法:str.encode(encoding=‘utf-8’,errors=‘strict’) ->bytes(获得bytes类型对象)
注释:
encoding参数可选,即要使用的编码,默认编码为’utf-8’。字符串编码常用类型有:utf-8,gb2312,cp936,gbk等。
errors参数可选,设置不同错误的处理方案。默认为’strict’,意为编码错误引起一个UnicodeEncodeError。其他可能值有’ignore’,‘replace’,xmlcharrefreplace’以及通过codecs.register_error()注册其它的值。
程序示例及结果:
3.decode()函数
用法同encode()函数,只不过decode()是解码。