python实验二:字符串排序
##统计word中的各个字符的出现的次数,并统计出所有前十名的字符使用次数
# -*- coding:utf-8 -*-
word='''awfesdafhjkcasadckjsdackjsadvcnksausafdsch
fsadfdsaasdfsdacsafsdaas
csaasfdasdfsda
sfadfsdafsadfjtyurjryjghnkuitki''' list1 = list(word) #将字符串转化为列表 while '\n' in list1: #去掉列表中的'\n'字符
list1.remove('\n') list2 = sorted(list1) #列表排序
list3 = list(set(list1)) #列表去重复
list4 = [] #定义两个空列表
list5 = [] for i in list3:
j = list2.count(i) #统计字符个数
list4.append((i, j)) #将字符及个数加入新列表 def recmp(x, y): #定义一个排序函数与cmp函数输出结果相反
if x < y :
return 1
if x == y:
return 0
if x > y:
return -1 list4.sort(lambda x,y:recmp(x[1],y[1])) #根据第二关键词排序
list5 = list4[:10] #取出前十项
print list5 #输出结果:
[('a', 22), ('s', 21), ('d', 16), ('f', 13), ('c', 7), ('k', 6), ('j', 6), ('h', 3), ('u', 3), ('i', 2)]
python实验二:字符串排序的更多相关文章
- Python基础(二) —— 字符串、列表、字典等常用操作
一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 二.三元运算 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为 ...
- Python基础二字符串和变量
了解一下Python中的字符串和变量,和Java,c还是有点区别的,别的不多说,上今天学习的代码 Python中没有自增自减这一项,在转义字符那一块,\n,\r\n都是表示回车,但是对于不同的操作系统 ...
- Python学习二---字符串
一.字符串 1.1.字符串和转义字符 转义字符需要使用\来表示 1.2.字符串连接 print 字符串1 字符串2,打印出来的字符串直接连接在一起没有空格 print 字符串1,字符串2,打印出来的字 ...
- Frenetic Python实验(二)
实验3 packet_in_out 目的:模拟一个普通的双端口中继器. This application implements a very simple 2 port repeater where ...
- python 列表中字符串排序故事一则
a = ["bca","cab","abc"] 有时候需要对列表排序 如果是对列表中整个元素 直接用sort()排序 如果想按元素的某一段排 ...
- python字符串排序方法
一般情况下,python中对一个字符串排序相当麻烦: 一.python中的字符串类型是不允许直接改变元素的.必须先把要排序的字符串放在容器里,如list. 二.python中的list容器的sort( ...
- Python字符串排序
看了西红柿的博客,此文纯搬运,方便自己查询用. 原文:https://www.cnblogs.com/tomato0906/articles/4890701.html 1.python中的字符串类型是 ...
- python 实现Hadoop的partitioner和二次排序
我们知道,一个典型的Map-Reduce过程包 括:Input->Map->Partition->Reduce->Output. Partition负责把Map任务输出的中间结 ...
- 201843 2019-2020-2 《Python程序设计》实验二报告
201843 2019-2020-2 <Python程序设计>实验二报告 课程:<Python程序设计> 班级: 1843 姓名: 李新锐 学号:20184302 实验教师:王 ...
随机推荐
- 基于mini2440的uboot移植(一)
一.移植环境 虚拟机:ubuntu12.04 uboot源码:u-boot-2008.10.tar.bz2 交叉编译:arm-linux-gcc-4.4.3 简单的记录下编译uboot的过程,要想具体 ...
- 11.用C对32位内存地址的访问方式
使用一个32位处理器,要对一个32位的内存地址进行访问,可以这样定义 #define RAM_ADDR (*(volatile unsigned long *)0x0000555F) ...
- webstorm安装后的一些设置技巧:
如何更改主题(字体&配色):File -> settings -> Editor -> colors&fonts -> scheme name.主题下载地址 如 ...
- Protocol buffers 介绍
Protocol buffers和mxl一样在序列化数据结构时很灵活.高效和智能,但是它的优势在于定义文件更小,读取速度更快,使用更加简单.目前protocol buffers支持C++.java和p ...
- SIGABRT的可能原因
常见原因: 第三方库如glic检测到内部错误或者破坏约束条件 3种可能1.double free/free 没有初始化的地址或者错误的地址2.堆越界3.assert
- ASP.NET 表单验证实现浅析
首先,自然是配置 Web.config,在 <system.web> 下设定: <authentication mode="Forms"> <form ...
- UI颜色值
UI颜色值 http://xh.5156edu.com/page/z1015m9220j18754.html
- 使用php技术实现无刷新的上传文件
- PHP存储blob示例(转)
原文:http://www.mysqltutorial.org/php-mysql-blob/ <?php /* CREATE TABLE files ( id INT AUTO_INCREME ...
- 解决openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory错误
问题 在Centos7上编译安装openssl后,运行openssl version出现如下错误: openssl: error while loading shared libraries: lib ...