python3 字符编码与转码 NLP第一条

额。。。上通识课讲到了NLP12条,感觉讲的挺好的,照着抄一条先。。。

1,没有两个人是一样的

没有两个人的人生经验会完全一样,所以没有两个人的信念,价值和规条系统会是一样。

因此没有两个人对同一件事的看法能够绝对一致。

因此没有两个人对同一件事的反应会是一样的。

因此没有两个人的态度和行为模式会完全一样。

因此发生在一个人身上的事,不能假定发生在另一个人身上也会有一样的结果。

人与人之间的不同,建造了这个世界的奇妙可贵。

尊重别人的不同之处,别人才会尊重自己独特的地方。

每一个人的信念,价值观和规条系统都是在不断演变中,所以没有一个人在两分钟是一样的。

两个人的信念,价值观和规条不一样,不一定会使两个人不能沟通或发展出良好关系。

给别人空间也就是尊重别人的信念,价值观和规条,才能有良好的沟通和关系。

同样地,自己与别人的看法不同,也是正常的事。

当尊重别人的信念,价值观和规条的同时,我们也有权力要求别人尊重自己的信念,价值观和规条。

相当有道理哈。。。



补个文件操作方法: 对于总是忘记关文件这一问题 最好用:

with open("file_name", "r", encoding= "utf-8") as f1, \

  open("file_name2", "r", encoding= "utf-8") as f2:

  一系列操作。。。。

这操作我喜欢!

然后还补个修改文件内容的方法:

本质上来说是不可能修改文件内容的,讲道理可以把文件从硬盘里拉到内存,比如用vim然后在内存里修改内容,这可以,但你搞个大文件内存就爆了,不好。

真正说来,修改文件其实是在写一份。。。一行一行的读源文件,不改的就写道新文件里,到了要改的内容就把它给改了再写道新文件里。。。。。就是这么操作的!如下所示:

 1 #!usr/bin/env/ python
 2 # -*- coding:gbk -*-
 3 # Author: XiaoFeng
 4
 5 with open("file_old", "r", encoding= "utf-8") as f1,  6         open("file_new", "w", encoding= "utf-8") as f2:
 7         for line in f1:  # 这里f1就相当于迭代器了 是啥我也不知道,但是输出一行是证实了的
 8             if "est" in line:  # 找到有"est"的那一行
 9                 line = "就是你了,我要修改你!\n"  #把这行直接从写
10             f2.write(line)

今天只学了编码解码。。。课多啊从早到晚  妈耶

首先得知道万国码unicode 最牛逼的 兼容万国啊   中文,英文都是两字节

其次是utf-8  中文的  英文一字节,因为包括的就是ASCLL码  但中文三字节 中国人有钱,人性  所以utf-8是长度可变的编码

还有个gbk编码 windows上用的把。。。

不同的文件用不同编码在不同的地方当然就打不开啦

所以 通用法就是 先解码成 中介:unicode  然后再编码成能是别的就行了

学个操作: sys.getdefaultencoding()  获取系统默认编码 我的python3里设置的是utf-8

奇葩的是 在程序里的 数据类型 却是unicode   搞不懂。。。。。。

一下是联系的草稿。。。。。。。。。。。。。。。没搞太懂哦

 1 #!usr/bin/env/ python
 2 # -*- coding:gbk -*-
 3 # Author: XiaoFeng
 4 import sys
 5
 6
 7 #   上面的声明作用是告诉python3这是个gbk编码的文件 用gbk编码来处理它
 8 print(sys.getdefaultencoding())  # 结果显示我这个 python3程序的默认编码是utf-8
 9 s = "哈哈哈"  # 这里又不一样了,管你啥文件编码,python3程序里 数据类型 就是是unicode编码
10 print(s)  # 所以这里可以直接输出中文
11
12 print("-" * 50)
13 s_utf8 = s.encode("utf-8")   # 注意Py3里 只会转成字节型
14 print(s_utf8)
15 print(s_utf8.decode())  # decode() 默认是utf-8  想要输出汉字还得decode一下才行(奇葩)
16
17 print("-" * 50)
18 s_gbk = s.encode("gbk")  # 把数据类型从unicode变成gbk
19 print(s_gbk)
20 # 现在是gbk编码 想输出中文,那得变成py3的 utf-8
21 # 所以先把gbk解码为unicode 然后再编码为utf-8
22 # decode()括号里要告诉unicode我是啥 decode()括号里要告诉unicode我想变成啥
23 # 注意Py3里 encode()只会转成字节型 想要输出中文还得decode()一下才行
24 print(s_gbk.decode("gbk").encode().decode())

原文地址:https://www.cnblogs.com/xf1262048067/p/10568903.html

时间: 2024-10-10 04:54:35

python3 字符编码与转码 NLP第一条的相关文章

python学习笔记(集合的使用、文件操作、字符编码与转码、函数)

集合 集合(set):把不同的元素组成一起形成集合,是python基本的数据类型. 集合元素(set elements):组成集合的成员 为什么需要集合? 集合的作用 1 .列表去重复数据 按照现有知识的解决思路:先设置空列表,然后使用for寻获,把需要去重的列表的第一个数据放到新列表中,然后依次取出第二个数据,把第二个数据和第一个数据作比较,如果不一样,则存入新列表中:以此类推,每取一次都要和新列表中的数据作对比,不一样的则添加入新列表中. 2. 关系测试 比如有学员同时报了python班和l

Python 三级菜单-字符编码和转码-集合的操作-文件的操作

三级菜单: menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{}, '网易':{}, 'google':{} }, '中关村':{ '爱奇艺':{}, '汽车之家':{}, 'youku':{}, }, '上地':{ '百度':{}, }, }, '昌平':{ '沙河':{ '老男孩':{}, '北航':{}, }, '天通苑':{}, '回龙观':{}, }, '朝阳':{}, '东城':{}, }, '上海':{ '闵行':{ "人民广场":{ '炸鸡店

Python——day3_基础1_集合,文件操作,字符编码与转码

集合 集合是一个无序的,不重复的数据组合,它的主要作用如下: 去重,把一个列表变成集合,就自动去重了 关系测试,测试两组数据之前的交集.差集.并集等关系 常用操作 s = set([3,5,9,10]) #创建一个数值集合 t = set("Hello") #创建一个唯一字符的集合 a = t | s # t 和 s的并集 b = t & s # t 和 s的交集 c = t – s # 求差集(项在t中,但不在s中) d = t ^ s # 对称差集(项在t或s中,但不会同时

python字符编码与转码

python 2.x 字符编码与转码 打印系统默认编码格式 import sys print(sys.getdefaultencoding()) UTF-8 转 gbk 方式:utf-8--转成--unicode--转成--gbk a = "你好" print a utf8_to_unicode = a.decode("utf-8")                 #utf-8转unicode print utf8_to_unicode unicode_to_gb

Python基础3 文件操作、字符编码与转码

文件操作 对文件操作过程 打开文件,得到文件句柄赋值给变量 操作 关闭文件 打开文件的模式有: r,只读模式(默认). w,只写模式.[不可读:不存在则创建:存在则删除内容:] a,追加模式.[可读:   不存在则创建:存在则只追加内容:] "+" 表示可以同时读写某个文件 r+,可读写文件.[可读:可写:可追加] w+,写读 a+,同a "U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用) rU r+U "b

python的 随手记----字符编码与转码

一.前提 那么到底什么是编码呢? //ASCII 记住一句话:计算机中的所有数据,不论是文字.图片.视频.还是音频文件,本质上最终都是按照类似 01010101 的二进制存储的. 再说简单点,计算机只懂二进制数字! 所以,目的明确了:如何将我们能识别的符号唯一的与一组二进制数字对应上?于是美利坚的同志想到通过一个电平的高低状态来代指0或1, 八个电平做为一组就可以表示出 256种不同状态,每种状态就唯一对应一个字符,比如A--->00010001,而英文只有26个字符,算上一些特殊字符和数字,1

Python3 字符编码

编码 字符串是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节.比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295. 由于计算机是美国人发明的,因此,最早只有127个字母被编码到计算

python 字符编码与转码

一. 字符编码 ASCII: 一个字节,最多能表示255个字符 GB2312(1980年):一共收录了7445个字符,包括6763个汉字和682个其它符号. GBK1.0(1995年):收录了21886个符号,它分为汉字区和图形符号区.汉字区包括21003个字符. GB18030(2000年):取代GBK1.0的正式国家标准,该标准收录了27484个汉字. Unicode(统一码,万国码) 为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有

004-python基础-字符编码与转码

一.三种编码方式 ASCII:是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256-1,所以,ASCII码最多只能表示 255 个符号. Unicode(统一码.万国码.单一码):是一种在计算机上使用的字符编码,规定所有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536. UTF-8: 是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:as