17-list,字典使用练习
randint(a,b)包括 [a,b]中随机, 包含a,b
range(n)= 0,1,2,3....n-1
chr() 数字转字符:
chr(65) 得到 :A
ord()字符转数字:
ord('a') 得到:97
ys = [random.randint(1,2) for i in range(10)] #产生1~2
print(ys) x = range(5)
print(list(x)) #0,1,3,4
随机生成一些字符,并存入list里面:
import random
def getRandCharList(n, f):
# n为所需随机序列的长度,f=1为只要大写,f=2为大写加小写,f=3为再加上数字 a = [ chr(i+65) for i in range(26)] #'A'-'Z'的顺序序列
b = [ chr(i+97) for i in range(26)] #'a'-'z'的顺序序列
c = [ i for i in range(10)] #0-9的顺序序列
c = a + b + c
if f == 1:
rt = [ c[random.randint(0,25)] for i in range(n)]
elif f == 2:
rt = [ c[random.randint(0,51)] for i in range(n)]
else:
rt = [ c[random.randint(0,61)] for i in range(n)]
return rt rt = getRandCharList(100,3)
print(rt)
统计一片英文文章里面的字母出现次数:
def tongji(path):
# 传入文件所在地址,统计文件内大小写字母的个数,按次数降序返回list
with open(path, 'rb') as f:
str = f.read().decode('utf-8') d = [ chr(i+65) for i in range(26)] #'A'-'Z'的顺序序列
x = [ chr(i+97) for i in range(26)] #'a'-'z'的顺序序列
mychar = x + d
dist = {}
for i in range(52):
dist[mychar[i]] = 0
for i in str:
if (i >= 'a' and i <= 'z') or (i >= 'A' and i <= 'Z'):
dist[i] = dist[i] + 1
dist = sorted(dist.items(), key = lambda x:x[1], reverse = True ) #sorted返回新对象
return dist #filepath = 'C:\\Users\\sss\\Desktop\\ys.txt';
filepath = 'ys.txt'
tj = tongji(filepath);
#print(tj)
ct = 0
for k,v in tj:
if v > 0:
ct = ct + 1
print(k,': ', v)
print("ct: ", ct)
sorted(dict.items(), key=lambda e:e[1], reverse=True)
Python 字典(Dictionary) items() 函数以列表返回可遍历的(键, 值) 元组数组。
语法
items()方法语法:
dict.items()
lambda函数也叫匿名函数,即,函数没有具体的名称。先来看一个最简单例子:
def f(x):
return x**2
print f(4)
Python中使用lambda的话,写成这样
g = lambda x : x**2
print g(4)
Python sorted() 函数:
sorted() 函数对所有可迭代的对象进行排序操作。
sort 与 sorted 区别:
sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。
list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作
17-list,字典使用练习的更多相关文章
- 【python cookbook】【数据结构与算法】17.从字典中提取子集
问题:想创建一个字典,其本身是另一个字典的子集 解决方案:利用字典推导式(dictionary comprehension)可轻松解决 # example of extracting a subset ...
- #11 Python字典
前言 前两节介绍了Python列表和字符串的相关用法,这两种数据类型都是有序的数据类型,所以它们可以通过索引来访问内部元素.本文将记录一种无序的数据类型——字典! 一.字典与列表和字符串的区别 字典是 ...
- 7、python中的字典
字典是python内置的一种无序.可变的数据结构. 字典也叫哈希表.什么是哈希表?哈希表就是会对表中的键(key)执行哈希计算,并根据计算结果在内存中分配一个区域来储存该键所对应的值(value).这 ...
- python3笔记-字典
5 1 # 创建字典 6 2 d=dict(name='lily',age=18,phone='') 7 3 print(d) 4 # {'name': 'lily', 'age': 18, 'pho ...
- 一鼓作气 博客--第三篇 note3
1 推荐读书消费者行为学 -商业的本质,APP得到,5分钟商学院 2定义字典 dic={'name':haibao,'age':18} 3字典的基本操作--查询 dic={'name':'haibao ...
- Python2.2-原理之类型和运算
此节来自于<Python学习手册第四版>第二部分 一.Python对象类型(第4章) 1. Python可以分解成模块.语句.表达式以及对象:1.程序由模块构成:2.模块包含语句:3.语句 ...
- python3.5.1语法
1.print (变量名) print("字符串") 2.a=1 id(a)返回a在内存中的地址 3.可以用table弹出提示 #coding:utf-8 4.输入3/2 结果 ...
- 你可能不知道的 30 个 Python 语言的特点技巧
列表按难度排序,常用的语言特征和技巧放在前面. 1.1 分拆 >>> a, b, c = 1, 2, 3>>> a, b, c(1, 2, 3)> ...
- 你可能不知道的30个Python语言的特点技巧
1 介绍 从我开始学习Python时我就决定维护一个经常使用的“窍门”列表.不论何时当我看到一段让我觉得“酷,这样也行!”的代码时(在一个例子中.在StackOverflow.在开源码软件中,等等), ...
- 30 个 Python 语言的特点技巧
1 介绍 从我开始学习Python时我就决定维护一个经常使用的“窍门”列表.不论何时当我看到一段让我觉得“酷,这样也行!”的代码时(在一个例子中.在StackOverflow.在开源码软件中,等等 ...
随机推荐
- bzoj1588[HNOI2002]营业额统计——双向链表
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1588 简单Splay.但用双向链表做.很好的思路. 1.(离线)按值排序,记下pre和nxt ...
- Linux 文件名中包含特殊字符
文件和文件夹的名称中有特殊字符,操作有两种方式( - 在文件名称最前面除外). 例如:文件名为 a&b.c 1.通过转移符 "\" $ touch a\&b.c ...
- jsp中取两位小数
var d=1.11111111; var c = d.toFixed(2); alert(c);
- 生产者-消费者问题:介绍POSIX线程的互斥量和条件变量的使用
全局初始化互斥量和条件变量(不全局也行,但至少要对线程启动函数可见,这样才能使用.) static pthread_cont_t cond = PTHREAD_COND_INITIALIZER; st ...
- 算法题:求一个序列S中所有包含T的子序列(distinct sub sequence)
题: 给定一个序列S以及它的一个子序列T,求S的所有包含T的子序列.例: S = [1, 2, 3, 2, 4] T = [1, 2, 4] 则S的所有包含T的子序列为: [1, 2, 3, 2, 4 ...
- bean对grub4dos做出的巨大贡献总结
bean对grub4dos做出的巨大贡献总结 ===================================================================bean对grub4 ...
- jq 合并json对象
一,保存object1和2合并后产生新对象,若2中有与1相同的key,默认2将会覆盖1的值 1 var object = $.extend({}, object1, object2); 二,将2的值合 ...
- 20165226 2017-2018-2《Java程序设计》课程总结
目录 一.作业汇总 二.总结 三.问卷调查 一.作业汇总 预备作业1:我期望的师生关系 预备作业2:学习基础和C语言基础调查 预备作业3:linux安装及学习 第一周: Java入门 第一周学习总结 ...
- Java 打印一个心心
package Day8_06; public class For { public static void main(String[] args) { System.out.println(&quo ...
- iis 重新安装后 重新注册asp.net
服务器IIS问题: 卸载并重新安装了IIS.... 解决方法:原因是IIS重装后要重新安装一下.NET Framework. 开始-->运行-->CMD-->然后在CMD窗口中输入命 ...