[x for x in set(open("c:\\test.txt").read()) if 19968<=ord(x)<=40869]

使用Python可以实现一句话统计文章里的不重复汉字数,代码如上。

这一句话涉及到Python的许多基本概念,拆解着分析一下。

open("c:\\test.txt").read()

上面一句的样式和其它语言类似,都是打开一个文件,然后读其中的内容。路径的写法也是传统的两个反斜杠,双引号包含。Python里的单引号和双引号没有太多区别,成对使用即可。好处是当原始字符串里含有单引号或者双引号时,使用另一种包含可以省掉转义符,让字符串看起来更直接。当然Python也有不使用转义符的做法,就是在字符串前面加一个字母r,这样字符串里的所有转意字符全部无效,作用类似C#下的@。示例代码如下:

open('c:\\test.txt').read()

open(r'c:\test.txt').read()

open是一个内建命令,带很多参数,除了文件路径需要指定外,别的都有默认值。常用的有mode,指定是读还是写等;encoding,指定文件的编码。

mode可以使用如下表达,并且可以叠加。

Character

Meaning

'r'

open for reading (default)

'w'

open for writing, truncating the file first

'x'

open for exclusive creation, failing if the file already exists

'a'

open for writing, appending to the end of the file if it exists

'b'

binary mode

't'

text mode (default)

'+'

open a disk file for updating (reading and writing)

'U'

universal newlines mode (for backwards compatibility; should not be used in new code)

encoding需要指定,默认为None,实质上是使用系统默认的编码。常见的编码有:utf_8,gbk,ascii等。

示例如下:

open(r'c:\test.txt',mode='rt',encoding='gbk')

接下来看看open读出来的到底是个啥东西。默认为文本,则显示的类型为:,是一个类。使用内建方法type()可以很方便地查看对象的类型。

示例如下:

type(open(r'c:\test.txt',mode='rt',encoding='gbk'))type(1)type(open)type('1')

open好一个文件后,跟着的是一个方法read()。现在可以清楚地看到read其实是TextIOWrapper这个类的一个方法,作用是将文件里的所有字符读成一个字符串。

到现在为止,open+read实现了把文件中所有的字符变成了一个字符串的效果。下面肯定是要筛除其中的重复部分和非汉字部分。对于筛除重复的字符,set()出场了。

set是一个类,简单讲就是一个没有value的字典,里面全是key。这样带来一个效果,set里面不会含有两个一样的数据。当然,扔进去重复的值,出来就不会重了。

示例如下:

set((1,2,2,3,4,5,6,8,333,55,55,6,7,7))

{1, 2, 3, 4, 5, 6, 7, 8, 333, 55}

set("123444lksdjflkajdsf8324u7")

{'8', '1', '3', '2', 'u', '4', '7', 'd', 'k', 'j', 'l', 'a', 's', 'f'}

(1,2,3,4,3)这样的形式在Python中称为tuple,中文称为元祖,简单讲就是不可变的数据集合。把元祖丢到set里,出来的是一个set的集合,重复的被剔掉了。Python里没有char这个概念,只有str,char就是只有一个字符的str。字符串也是集合,自然也可以丢到set里。注意set是散列的,不能保持顺序,不能用在顺序敏感的地方。

提到tuple,顺便说下tuple在Python下的小用法。典型的交换2个数,别的语言差不多都是创建一个swap变量进行。Python里则太简单了,示例如下:

a,b=1,2

(a,b)=(b,a)

歪了,说回来。接下来看整个语句外面的[]。这个东西叫list,和刚才说的tuple类似,但是是可变的,和c#里的arraylist类似,但是功能则更强大。Python提供了内置方法list()来方便地创建和转换列表。以下是list的简单用法:

list((1,2,3)) #return [1, 2, 3]

list('aabc') #return ['a', 'a', 'b', 'c']

L=list(('a','b','c'))

L.append(1) #return ['a','b','c',1]

L.extend((1,2)) #return ['a','b','c',1,1,2]

L.insert(0,100) #return [100,'a','b','c',1,1,2]

L.pop() #return 2

L #return [100,'a','b','c',1,1]

都是很普通的功能,需要注意的一个是pop()的方法。直接使用pop()会返回list的最后一个值,然后更新该list。pop()可以带参数运行,形如pop(index),表示剔除且对应index位的值,然后更新该list。这样就可以实现一些特殊用法,FIFO和FILO。pop()实现FIFO,pop(0)实现FILO。

list最值得说的是列表表达式,许多别的语言要几句话实现的功能,Python一句话就可以搞定,依靠的就是列表表达式。举个最简单的例子,从一堆数里面把奇数挑出来。c#里面依靠list<>和lambda也可以完成,但是Python更灵活,更轻量级。

[x for x in (1,2,3,4,5,6,7) if x%2!=0] #return [1,3,5,7]

首先整个过程是在[]里进行的,最后输出的也是一个list。整个列表是[x],之后紧接着的形如for x in range()的样式,其实和别的语言里的foreach一样,把整个区域里的值循环一遍,每读一个range里的值,就添加到[]里。最后是一个if语句,对每次读出的值做个判断,符合要求的才添加到list里,不符合的抛弃。

列表表达式里的for是可以嵌套的,实现更加复杂的运算,当然还是在一句话里。好,在做相对复杂的演示之前,介绍一个内置方法:range()。

range(5) #return range(0,5)

range(1,2) #return range(1,2)

list(range(5)) #return [0,1,2,3,4]

很简单,下面演示一个打印50内所有的勾股数的列表表达式:

[(x,y,z) for x in range(1,51) for y in range(x,51) for z in range(y,51) if z**2==x**2+y**2]#return [(3, 4, 5), (5, 12, 13), (6, 8, 10), (7, 24, 25), (8, 15, 17), (9, 12, 15), (9, 40, 41), (10, 24, 26), (12, 16, 20), (12, 35, 37), (14, 48, 50), (15, 20, 25), (15, 36, 39), (16, 30, 34), (18, 24, 30), (20, 21, 29), (21, 28, 35), (24, 32, 40), (27, 36, 45), (30, 40, 50)]

好,现在回头看这句话应该非常简单了。

[x for x in set(open("c:\\test.txt").read())]

这个列表表达式就是把test.txt里所有的不重复字符全部加到一个列表里了。目标是获取不重复汉字,那么得找到判断汉字的方法。Python内置了一个方法叫ord(),能将字符转换成unicode的编号。再google下,知道了汉字的区域基本在19968和40869之间。那就搞定了,ord()一下再加一个if就好了。顺便介绍下,Python支持比较直观的比较语法,基本和人类交流语言差不多:

x,y,z=1,2,3x

最终再看一遍扯了一大堆的这句话:

[x for x in set(open("c:\\test.txt").read()) if 19968<=ord(x)<=40869]

这里只是把汉字列出来了,但是还得统计字数,再介绍一个内置方法len()。套到list,tuple啊,字符串上,就能显示长度啦。

这里使用少年天才蒋方舟小学三年级上学期就出版了的第一本书《打开天窗》作为样本,检测一下代码:

[x for x in set(open("c:\\test.txt").read()) if 19968<=ord(x)<=40869]'''['油', '伸', '嘲', '冷', '木', '莫', '庭', '辣', '丢', '榧', '缘', '夜', '吞', '怖', '钉', '圈', '王', '市', '妇', '堆', '读', '防', '楼', '音', '偶', '杨', '扪', '续', '占', '赤', '婚', '眨', '染', '友', '削', '仍', '胁', '心', '政', '宰', '爵', '茫', '鸭', '累', '梦', '笛', '踢', '生', '树', '吉', '不', '老', '词', '弃', '备', '领', '死', '虽', '盲', '牵', '间', '具', '摩', '叠', '跤', '忘', '姜', '巨', '桑', '胖', '里', '赏', '奇', '游', '欺', '格', '放', '露', '琴', '然', '昨', '披', '挪', '讥', '钟', '遥', '蚓', '压', '脖', '拦', '射', '淹', '驰', '其', '早', '晨', '凡', '代', '该', '侃', '摔', '陈', '半', '灌', '济', '所', '练', '费', '论', '失', '阳', '措', '加', '定', '颜', '易', '耗', '唉', '伍', '涎', '愁', '技', '布', '石', '妆', '饱', '卵', '偷', '凶', '扫', '揪', '差', '狠', '恶', '步', '默', '位', '鳄', '姆', '显', '傻', '制', '怪', '茬', '帮', '务', '趣', '伤', '或', '舒', '与', '弄', '宇', '座', '晾', '饰', '僵', '号', '渴', '聪', '狡', '给', '瑞', '惕', '太', '乎', '层', '篇', '婆', '丹', '落', '娱', '状', '审', '弯', '冠', '责', '欧', '宜', '土', '蔓', '撒', '怕', '抖', '厌', '漏', '于', '膀', '龄', '板', '曾', '称', '哲', '灵', '卷', '旨', '脚', '牡', '几', '波', '桥', '回', '柔', '拖', '克', '双', '住', '从', '扁', '边', '永', '施', '箱', '砰', '咳', '甲', '况', '阴', '般', '纯', '造', '财', '两', '龙', '尘', '多', '喝', '合', '亏', '怀', '馅', '迹', '替', '松', '扬', '置', '赢', '警', '忙', '非', '译', '苗', '呈', '牌', '低', '席', '冬', '碰', '爷', '抬', '微', '交', '窜', '队', '搓', '眉', '针', '熊', '持', '庄', '声', '味', '闲', '兵', '直', '叶', '自', '括', '卡', '令', '详', '揖', '哈', '释', '迎', '组', '密', '为', '抽', '喷', '肩', '茨', '墙', '帚', '劝', '熟', '戒', '蚕', '斗', '型', '最', '它', '处', '将', '拽', '右', '牲', '兴', '送', '积', '确', '以', '存', '扒', '旗', '午', '埋', '界', '杀', '根', '许', '人', '愿', '就', '劲', '阵', '男', '推', '末', '欣', '严', '货', '官', '民', '辐', '酱', '选', '看', '掀', '骂', '帅', '崇', '轻', '腿', '山', '即', '痴', '恩', '酷', '壮', '正', '运', '又', '益', '幅', '递', '肿', '脾', '劳', '未', '箭', '搬', '珠', '欢', '账', '香', '娘', '丐', '抓', '枕', '同', '待', '鲇', '任', '腾', '己', '鹰', '止', '黛', '罚', '逼', '烟', '跑', '乐', '荒', '联', '凉', '版', '母', '旁', '魂', '必', '主', '憾', '玲', '枪', '烽', '润', '鲜', '借', '源', '排', '悔', '和', '娃', '缅', '预', '凌', '泼', '史', '拨', '虫', '因', '裤', '高', '浑', '打', '著', '光', '谓', '售', '似', '决', '猴', '阶', '本', '唠', '蠢', '侧', '尚', '原', '云', '怒', '撕', '林', '吊', '蚁', '攀', '堂', '豺', '能', '找', '凳', '却', '择', '缠', '解', '泥', '此', '蹦', '站', '滑', '赐', '勉', '先', '告', '棍', '每', '秃', '活', '傲', '吵', '认', '亦', '鹿', '办', '丑', '朗', '暖', '锋', '绑', '庆', '诏', '拾', '关', '零', '秘', '狞', '居', '细', '治', '贺', '嚷', '怨', '产', '伦', '宙', '功', '暗', '玉', '咋', '极', '悲', '拿', '雷', '恨', '端', '车', '异', '凝', '近', '扔', '啊', '房', '弱', '冲', '电', '滔', '您', '败', '题', '休', '喊', '植', '约', '骄', '歹', '裸', '跺', '承', '影', '陷', '惨', '葫', '饭', '篮', '睡', '思', '衣', '孙', '飘', '懒', '拔', '烈', '忆', '横', '疯', '报', '玛', '刚', '输', '粉', '宋', '梁', '垃', '艺', '份', '印', '干', '头', '毫', '园', '嗯', '若', '绝', '兜', '属', '荐', '乒', '赔', '姑', '踪', '藏', '裁', '采', '丽', '现', '辨', '唯', '鼠', '宠', '斤', '愧', '悦', '猛', '帝', '农', '掐', '袖', '很', '善', '台', '巴', '祷', '壶', '藤', '慧', '剩', '提', '体', '屉', '筋', '敏', '方', '挺', '派', '到', '纳', '鞭', '键', '稠', '接', '疙', '嘘', '力', '成', '气', '师', '要', '言', '厅', '各', '追', '绳', '饶', '歪', '短', '衬', '胧', '博', '停', '糟', '仓', '试', '立', '塌', '见', '改', '贩', '启', '疮', '挥', '撤', '性', '错', '厚', '缝', '脑', '专', '程', '服', '垂', '包', '共', '狰', '平', '浩', '问', '章', '留', '盘', '牛', '廊', '拐', '乓', '街', '终', '哄', '遇', '准', '便', '举', '娶', '骡', '肥', '控', '隙', '甘', '军', '通', '猜', '龟', '脐', '演', '馋', '明', '分', '兰', '究', '滩', '哭', '做', '卜', '腐', '诗', '廉', '始', '操', '柏', '虎', '馆', '肺', '掼', '爱', '冰', '堵', '吭', '眯', '皮', '急', '茧', '芦', '尝', '我', '蠕', '完', '瞄', '虹', '汽', '减', '使', '页', '筷', '目', '散', '捧', '苦', '绞', '扑', '浓', '奋', '磊', '富', '啃', '升', '亿', '被', '管', '厉', '废', '耐', '洒', '且', '璃', '内', '匆', '摸', '仿', '灰', '年', '俩', '闭', '盯', '寡', '敢', '员', '烛', '统', '恐', '屈', '李', '血', '铃', '附', '勇', '总', '达', '家', '垮', '逛', '挑', '氓', '五', '殖', '验', '吃', '喂', '的', '切', '历', '拼', '湿', '米', '已', '维', '穷', '佩', '注', '矮', '董', '既', '静', '仔', '啪', '嫌', '检', '充', '雄', '片', '蔼', '钱', '地', '害', '纵', '离', '辫', '个', '逮', '张', '愤', '鬼', '窝', '甜', '律', '芍', '怎', '理', '惹', '智', '意', '遮', '父', '旧', '矛', '镜', '塞', '材', '拍', '兄', '呆', '吱', '讨', '炮', '挣', '抢', '春', '候', '厘', '喜', '够', '增', '洗', '守', '床', '舍', '脏', '谁', '阅', '揸', '西', '海', '忠', '捣', '拢', '擦', '变', '睛', '祟', '飞', '某', '绊', '才', '胎', '激', '千', '狂', '际', '镇', '哆', '机', '讽', '媳', '破', '污', '享', '伪', '荣', '写', '刘', '宝', '碟', '斑', '誓', '趁', '一', '瓦', '痱', '念', '坛', '班', '兮', '换', '查', '四', '坚', '食', '神', '赖', '揍', '勃', '哇', '商', '唱', '稳', '纠', '探', '嘛', '妞', '蔑', '津', '谗', '羊', '洁', '困', '灯', '扣', '来', '筝', '瓜', '救', '何', '汗', '奉', '流', '什', '剃', '参', '抹', '脸', '醒', '访', '皱', '唰', '德', '环', '刮', '素', '挤', '额', '暑', '世', '尊', '掏', '苹', '并', '汪', '热', '转', '可', '痛', '如', '察', '法', '身', '俗', '乖', '嫉', '祈', '描', '扎', '仁', '铅', '陆', '船', '攻', '栽', '嘱', '鸡', '愣', '众', '妈', '聊', '耍', '丁', '震', '隆', '批', '女', '彷', '泪', '书', '狮', '牙', '竞', '虑', '棒', '汕', '比', '他', '糊', '捏', '元', '烂', '盆', '昼', '款', '康', '让', '坡', '沫', '洪', '犯', '朦', '咛', '椒', '涕', '安', '希', '皇', '圆', '瑰', '壳', '驴', '表', '浪', '蹬', '慢', '日', '竟', '仗', '病', '设', '京', '护', '草', '实', '嬉', '戏', '莎', '逃', '锅', '胸', '曼', '课', '豫', '跪', '六', '们', '副', '叮', '祝', '真', '村', '角', '等', '屋', '彪', '畅', '缸', '礼', '玻', '耶', '在', '玫', '爪', '涯', '股', '沙', '优', '搞', '月', '较', '寻', '空', '国', '饼', '柳', '整', '哩', '叫', '剪', '公', '路', '胡', '幢', '童', '毛', '曝', '子', '绍', '慌', '屎', '郁', '促', '资', '记', '吩', '猫', '努', '中', '熬', '贯', '红', '娥', '大', '导', '撞', '盾', '把', '珍', '白', '锐', '长', '链', '遵', '曲', '惶', '卫', '蹭', '还', '塑', '盒', '常', '唾', '阻', '猪', '尤', '碧', '补', '嚓', '厕', '由', '而', '刀', '漂', '幸', '帽', '器', '形', '乘', '科', '青', '瓶', '忍', '仃', '诅', '纸', '疾', '甩', '别', '抠', '鸣', '鲤', '朝', '袜', '匕', '咔', '逗', '小', '七', '标', '覆', '寺', '雨', '只', '顶', '付', '单', '遗', '手', '菊', '背', '泄', '视', '纹', '妻', '笼', '瘾', '获', '用', '侯', '骑', '餐', '梅', '移', '顺', '矿', '百', '蝴', '嘴', '仙', '蓝', '嗓', '受', '求', '装', '难', '樱', '登', '瘩', '邪', '伯', '亮', '群', '萝', '期', '咒', '北', '掌', '式', '爆', '命', '族', '图', '险', '门', '八', '软', '嫦', '淘', '棚', '束', '姐', '南', '惊', '净', '歇', '示', '喽', '圾', '爬', '索', '贾', '化', '躲', '鼎', '晴', '矩', '周', '烫', '潮', '握', '姥', '学', '这', '楚', '狗', '卖', '经', '弹', '阿', '罕', '暴', '户', '购', '犬', '港', '侮', '挡', '肠', '伙', '星', '笑', '吓', '隔', '列', '有', '膊', '美', '邀', '调', '涂', '椅', '掰', '须', '敲', '涅', '更', '哨', '火', '独', '修', '捡', '惠', '奥', '余', '痒', '取', '恋', '鹏', '十', '识', '倾', '轮', '垫', '唬', '宣', '辛', '业', '芝', '澈', '划', '疗', '悉', '窍', '福', '需', '武', '溅', '翻', '灾', '轰', '色', '矫', '巧', '裙', '进', '齐', '兔', '敌', '品', '着', '仅', '襄', '豆', '鼻', '儿', '昵', '厨', '紧', '亚', '感', '少', '徐', '朋', '蚊', '稍', '夏', '清', '项', '寸', '彻', '建', '致', '叨', '雪', '森', '季', '佛', '滚', '屑', '奏', '风', '久', '规', '妹', '麻', '缺', '尼', '丰', '芳', '收', '训', '听', '梯', '映', '堤', '些', '会', '帐', '途', '钗', '箍', '萌', '械', '辅', '鱼', '深', '买', '语', '刷', '橘', '适', '哗', '镖', '蛋', '贱', '戳', '莲', '朵', '动', '瞪', '咬', '客', '弥', '丛', '挝', '吗', '遭', '她', '幻', '避', '仰', '艳', '啥', '时', '左', '嘟', '呗', '雀', '汇', '夸', '尺', '助', '袭', '鸦', '霉', '肝', '舞', '倒', '销', '竹', '祸', '都', '走', '至', '全', '睬', '误', '孤', '作', '黑', '拉', '慈', '摊', '雁', '桂', '过', '育', '魔', '利', '咪', '湖', '室', '度', '洛', '炒', '砍', '喀', '谅', '了', '乱', '围', '物', '哪', '无', '怜', '赛', '远', '损', '叔', '块', '盖', '筏', '评', '潇', '容', '砸', '势', '猾', '戴', '尔', '玩', '荡', '颗', '级', '东', '掉', '蒋', '超', '漆', '对', '系', '幼', '胳', '蝶', '番', '工', '继', '泛', '赚', '捞', '酒', '想', '盗', '揉', '种', '呀', '仇', '但', '耳', '架', '含', '议', '蜡', '婶', '溜', '舟', '冒', '聋', '按', '复', '省', '概', '万', '辆', '类', '兽', '泰', '部', '鑫', '闪', '条', '奶', '网', '道', '噗', '黄', '捉', '睁', '哀', '桃', '观', '霸', '去', '刺', '纽', '尾', '澳', '串', '贴', '岩', '宫', '斯', '欠', '锤', '蒙', '戚', '趟', '砖', '沉', '残', '樊', '后', '牺', '兼', '蹲', '桶', '旯', '保', '院', '啤', '跟', '泉', '凑', '担', '吹', '医', '鸽', '精', '毕', '亲', '趴', '支', '撮', '校', '圣', '祖', '疤', '邦', '抚', '丝', '负', '蹈', '瀑', '鼓', '辈', '码', '简', '蚂', '行', '勺', '幽', '供', '督', '团', '照', '烦', '九', '当', '绒', '套', '汉', '降', '哎', '灭', '权', '胆', '瘸', '区', '值', '段', '水', '料', '肉', '抛', '依', '洞', '库', '箕', '鞋', '碗', '外', '丈', '禁', '稀', '蜂', '脆', '闹', '忽', '诵', '硬', '奸', '带', '面', '句', '烧', '招', '违', '赞', '金', '结', '归', '奖', '么', '桌', '私', '杂', '摄', '刻', '炼', '尿', '脱', '样', '罗', '妖', '相', '巾', '衷', '旮', '教', '惜', '江', '狐', '晃', '集', '蓄', '甸', '债', '粽', '羿', '耸', '花', '足', '伴', '堪', '播', '第', '枯', '首', '滥', '算', '争', '突', '搂', '畸', '击', '英', '慰', '跳', '棵', '请', '绩', '纷', '普', '楠', '呢', '蛙', '迟', '乞', '磕', '响', '歌', '嫁', '情', '尽', '咦', '夫', '搭', '术', '模', '锣', '钢', '肚', '伟', '三', '消', '名', '威', '者', '指', '养', '齿', '铁', '杯', '蛮', '橡', '健', '卧', '菜', '翔', '字', '竖', '义', '坏', '秀', '吸', '邻', '线', '河', '临', '躺', '断', '蚯', '计', '愚', '伞', '窗', '辉', '谈', '袋', '随', '培', '僻', '绿', '恰', '泳', '退', '士', '马', '诡', '瓣', '除', '距', '发', '棋', '霆', '捆', '液', '讶', '缩', '是', '次', '贝', '辞', '应', '栋', '瞎', '出', '狼', '广', '惰', '滴', '婴', '彩', '填', '入', '剧', '另', '拜', '也', '连', '假', '城', '扇', '点', '芭', '没', '传', '否', '底', '尖', '抱', '例', '上', '岁', '开', '坦', '文', '骗', '啼', '姿', '顾', '杰', '快', '泡', '你', '口', '呦', '晚', '坐', '奔', '量', '摆', '稽', '疼', '贷', '纪', '侠', '唧', '钦', '望', '斜', '向', '涌', '往', '范', '节', '司', '饿', '葱', '起', '扭', '象', '银', '凤', '哦', '幕', '委', '糖', '诈', '今', '前', '郎', '屁', '爸', '场', '宽', '吼', '社', '欲', '拥', '宗', '肯', '劣', '战', '疑', '研', '粗', '事', '挂', '呼', '赶', '罪', '惯', '腮', '淡', '习', '知', '哧', '啦', '托', '话', '筒', '觉', '介', '反', '像', '俐', '捂', '躬', '嘻', '讲', '天', '骨', '循', '怯', '吧', '折', '蒜', '隐', '引', '下', '貌', '透', '腰', '掂', '悄', '狸', '噻', '基', '哼', '顿', '曰', '诲', '息', '驶', '嗦', '鹅', '录', '之', '俊', '偏', '摇', '犹', '馒', '眼', '蚱', '强', '逢', '瞧', '薛', '唐', '笔', '得', '谊', '傍', '酸', '闻', '寿', '驾', '数', '迷', '票', '惭', '扮', '满', '哥', '监', '姓', '糕', '答', '志', '擅', '画', '新', '紫', '果', '秋', '洋', '倍', '特', '妙', '说', '件', '姨', '药', '古', '柜', '彗', '遍', '协', '狎', '球', '钻', '良', '梳', '伶', '芯', '澡', '那', '判', '吐', '店', '编', '再', '猎', '征', '叹', '签', '柱', '践', '价', '轶', '孔', '臭', '拯', '据', '信', '池', '睦', '聘', '诉', '案', '重', '乌', '华', '翁', '局', '旅', '蛇', '炸', '吻', '稿', '宾', '朱', '贵', '墨', '咐', '妒', '谋', '越', '二', '配', '考', '抄', '好', '盼', '穿', '赵', '孩', '磨', '扯', '略', '臂', '弟', '坑', '歉', '免', '懂', '故']'''

再看下字数:

len([x for x in set(open("c:\\test.txt").read()) if 19968<=ord(x)<=40869])2011

这里可以看出,如果你家娃在上三年级的时候还不能认识这2011个字,更不要说熟练运用,更遑论被if过滤掉的英文单词、数字和标点符号,你家娃铁定是没希望成为天才了。做你的苦逼码农去吧!

python统计汉字个数是_Python入门(一):一句话统计文章不重复汉字数相关推荐

  1. Python入门(一):一句话统计文章不重复汉字数

    [x for x in set(open("c:\\test.txt").read()) if 19968<=ord(x)<=40869] 使用Python可以实现一句 ...

  2. python统计汉字个数是_python统计中文字符数量的两种方法

    方法一: def str_count(str): '''找出字符串中的中英文.空格.数字.标点符号个数''' count_en = count_dg = count_sp = count_zh = c ...

  3. python统计汉字个数是_Python中文词频统计

    今天看到的一个统计,统计的金庸小说里面的高频词语.想着看了一周python,试试看能不能统计. 网上找的代码,调整顺序拼接了一下,分词库是结巴分词. 解决了python2.7中字典显示中文乱码的问题 ...

  4. python统计单词个数算法_python 统计单词个数和频次

    开始学习python,习题需要统计单词个数和频次.百度找到的代码好像都有问题.自己写了一个,调试通过. 环境:python: 3.9.1 64bit :  pycharm: 2020.2  电脑 wi ...

  5. python为什么那么难学_Python入门很难吗? 为什么越来越多的人都学Python?

    Python都说是最容易学习的编程语言,但是为什么还是有很多的小白在学习的过程中学的云里雾里,一天到晚都是报错,异常,这也怪不得会有那么多人说,学Python是从入门到入土!其实一门编程语言不像语文那 ...

  6. python求三个数平均值_python求三个数平均值

    本文收集整理关于python求三个数平均值的相关议题,使用内容导航快速到达. 内容导航: Q1:利用python3.x计算任意数据平均值 l=[1,2,3]def ave(a):print(sum(a ...

  7. python jieba库不存在_Python入门:jieba库的使用

    jieba库是一款优秀的 Python 第三方中文分词库,jieba 支持三种分词模式:精确模式.全模式和搜索引擎模式,下面是三种模式的特点. 精确模式:试图将语句最精确的切分,不存在冗余数据,适合做 ...

  8. python统计汉字个数是_使用 Python 统计中文字符的数量

    使用 Python 统计中文字符的数量 方法一,排除法 假设只有中英文字符: import string def str_count(str): '''找出字符串中的中英文.空格.数字.标点符号个数' ...

  9. python判断汉字个数_python判断列表里数量python中文乱码问题大总结

    在运行这样类似的代码:#!/usr/bin/env python s="中文" print s 最近经常遇到这样的问题: 问题一:SyntaxError: Non-ASCII ch ...

最新文章

  1. 5GS 协议栈 — Overview
  2. 申请表怎么填才能提高信用卡额度?
  3. 如何在开源社区贡献代码_如何在15分钟内从浏览器获得您的第一个开源贡献
  4. l3asnumanode 设置_linux numa 配置
  5. 第一阶段SCRUM冲刺-05
  6. 函数名,函数体,返回值,参数
  7. linux网络代码结构
  8. 悬浮球不用权限_Android 实现无需权限的悬浮球效果,可适配至Android 10
  9. wangeditor中添加超链接校验
  10. 2021 CSDN查看自己关注的人
  11. 1024 科学计数法 (20 分) C语言
  12. 做微商如何快速加好友找到客源
  13. Shattered Cake
  14. 新版 | 小O地图V0.9.2.0
  15. 上海中专计算机学什么,职校毕业生自述:只有中专文凭,靠什么落户上海
  16. 以新年之名,赠予新年好礼!
  17. 判断一个数是否为完全数
  18. 新手入门——计算机概论
  19. 最简单的平面制图用什么软件_用最简单的话告诉你DeFi是什么
  20. 零散知识点20180403

热门文章

  1. 两步免费开通企业微信,不用提交资料
  2. OHS简单安装与系统配置
  3. oracle event   设置 alter system set events
  4. Linux 搭建NodeBB社区,搭建CAS登录认证平台,实现Nodebb接入企业CAS认证(二)
  5. OpenResty 在又拍云容器平台中的应用
  6. linux如何卸载lightdm,告诉你Ubuntu安装LightDM的方法及命令
  7. 深夜报社哪家强?我分析了大众点评20w家店告诉你!
  8. D-009 eMMC电路设计
  9. 关于测试机器人的记录
  10. Numpy计算三角函数