python入门教程

python入门教程NO.6 用python做个简单的彩票号码统计分析工具

本文涉及的python基础语法是:字典、集合及for循环

字典的定义

字典也是一种可变的容器,它可以存储任意的类型对象。

字典中的每个key: value键值对用冒号 : 分割,不同键值对之间用逗号 , 分割,整个字典包括在花括号{}中 ,示例如下

dic = {key1 : value1, key2 : value2, key3 : value3}

python字典的健必须不可变(可以是字符串、数字、元组,不能是列表),如果一个字典内部有相同的健,那么后面的健值会替换前面的同名健值

dic = {'a': 5, 'b': 8, 'c': 9 , 'a': 0}

print(dic['a'])

#输出:0

print(dic)

#输出:{'a': 0, 'b': 8, 'c': 9}

如果用不在字典里面的健获取数据,会发生如下的错误

dic = {'a': 5, 'b': 8, 'c': 9 , 'a': 0}

print(dic['ae'])

#输出:

Traceback (most recent call last):

File "D:/test/demo.py", line 2, in

print(dic['ae'])

KeyError: 'ae'

字典的增删改查

dic = {'name': 'python攻城狮' , 'gender': '男' , 'hobby': '写代码'}

#通过赋值的方式,增加新的键值对

dic['age'] = 28

print(dic)

#输出:{'name': 'python攻城狮', 'gender': '男', 'hobby': '写代码', 'age': 28}

#通过del方法,可以删除指定的键值对

dic = {'name': 'python攻城狮', 'gender': '男', 'hobby': '写代码', 'age': 28}

del dic['gender']

print(dic)

#输出:{'name': 'python攻城狮', 'hobby': '写代码', 'age': 28}

#可以直接通过赋值的方式修改指定健的值

dic = {'name': 'python攻城狮', 'hobby': '写代码', 'age': 28}

dic['age'] = 30

print(dic['age']) #输出:30

#查找字典里面健的值

dic = {'name': 'python攻城狮', 'hobby': '写代码', 'age': 28}

print(dic['name']) #输出:python攻城狮

#判断是否存在该健

dic = {'name': 'python攻城狮', 'hobby': '写代码', 'age': 28}

if 'interest' in dic:

print('True')

else:

print('False')

#输出:False 即表明该健不在字典dic中,if...else...条件判断语句,我们后面会讲到

字典的内置函数和方法

Python字典包含了以下内置函数:

函数

描述

cmp(dic1, dic2)

比较两个字典元素。

len(dic)

计算字典元素个数,即键的总数。

str(dic)

输出字典可打印的字符串表示。

type(variable)

返回输入的变量类型,如果变量是字典就返回字典类型。

Python字典包含了以下内置方法:

函数方法

描述

dic.clear()

删除字典内所有元素

dic.copy()

返回一个字典的浅复制

dic.fromkeys(seq[, val])

创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值

dic.get(key, default=None)

返回指定键的值,如果值不在字典中返回default值

dic.has_key(key)

如果键在字典dict里返回true,否则返回false

dic.items()

以列表返回可遍历的(键, 值) 元组数组

dic.keys()

以列表返回一个字典所有的键

dic.setdefault(key, default=None)

和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default

dic.update(dict2)

把字典dict2的键/值对更新到dict里

dic.values()

以列表返回字典中的所有值

pop(key[,default])

删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。

popitem()

返回并删除字典中的最后一对键和值。

集合

集合(set)是一个无序且不重复元素序列,可以使用{}或者set()来创建集合,但是要注意的是:

创建空集合必须使用set(),因为{}创建的是空字典

#创建集合

a = {1, 3 , 5 , 8}

a = set('abcbacf')

print(a) #输出:{'b', 'f', 'a', 'c'} 当我们想要去掉一段序列重复项时可以使用集合

python两个集合之间的运算:假定我们现在有两个集合,分别是a = {1, 5 ,3 , 2},b = { 4 , 6 , 3 , 2}

#求a与b的交集(集合a和b中都包含了的元素)

print(a & b) #输出:{2, 3}

#求a与b的并集(集合a或b中包含的所有元素)

print(a | b) #输出: {1, 2, 3, 4, 5, 6}

#求a与b的差集(集合a(b)中包含而集合b(a)中不包含的元素)

print(a - b) #输出:{1, 5}

print(b - a) #输出:{4, 6}

#求a与b的对称差集(不同时包含于a和b的元素)

print(a ^ b) #输出:{1, 4, 5, 6}

集合的函数方法

方法

描述

add()

为集合添加元素

clear()

移除集合中的所有元素

copy()

拷贝一个集合

difference()

返回多个集合的差集

difference_update()

移除集合中的元素,该元素在指定的集合也存在。

discard()

删除集合中指定的元素

intersection()

返回集合的交集

intersection_update()

返回集合的交集。

isdisjoint()

判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。

issubset()

判断指定集合是否为该方法参数集合的子集。

issuperset()

判断该方法的参数集合是否为指定集合的子集

pop()

随机移除元素

remove()

移除指定元素

symmetric_difference()

返回两个集合中不重复的元素集合。

symmetric_difference_update()

移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。

union()

返回两个集合的并集

update()

给集合添加元素

#1、添加元素

a = {0, 1}

a.add(8)

print(a) #输出:{0, 1, 8}

#2、移除元素

a ={0, 1, 8}

a.remove(0)

print(a) #输出:{1, 8}

#其他方法大家可以一一尝试一下,了解他们的用法

for循环

Python中for循环可以循环遍历任何序列的项目,例如字符串、列表、元组、字典等,语法结构为for...in...:

#遍历一个字符串

a = 'hello攻城狮'

for i in a: #这里的i可以使用任何变量代替

print(i)

#输出:

h

e

l

l

o

#遍历一个列表

lists = [1, 8 , 9 , 5]

for e in lists:

print(e)

#输出:

1

8

9

5

#遍历一个字典

dic = {'name': 'python攻城狮', 'hobby': '写代码', 'age': 28}

for i in dic:

print(i)

#输出:直接遍历字典,会默认遍历字典的健

name

hobby

age

#遍历字典的值

dic = {'name': 'python攻城狮', 'hobby': '写代码', 'age': 28}

for i in dic.values():

print(i)

#输出:

python攻城狮

写代码

28

#遍历字典的键值对

dic = {'name': 'python攻城狮', 'hobby': '写代码', 'age': 28}

for i in dic.items():

print(i)

#输出:

('name', 'python攻城狮')

('hobby', '写代码')

('age', 28)

用python做个彩票统计分析工具

假如我们一共有5组连续的彩票开奖号码,他们分别是

期数

开奖号码

1

'1', '5' , '9' , '3' , '7'

2

'4', '2' , '1', '3' , '6'

3

'2', '3' , '8' , '4' , '9'

4

'9', '3' , '2' , '4' , '5'

5

'5', '3' , '6' , '8' , '1'

我们需要统计一下这5期彩票中,每个号码出现的次数,并将次数作为号码的值,以字典的形式打印出来

请根据要求,开始你的编程吧!

用python写一个彩票过滤器_python入门教程NO.6 用python做个简单的彩票号码统计分析工具...相关推荐

  1. python写彩票预测软件_python入门教程NO.6 用python做个简单的彩票号码统计分析工具...

    python入门教程NO.6 用python做个简单的彩票号码统计分析工具-1.jpg (37.04 KB, 下载次数: 0) 2020-11-27 14:29 上传 python入门教程 pytho ...

  2. python猜年龄代码_python入门教程NO.7用python来写一个猜数字游戏

    python入门教程 本文涉及的python基础语法为while循环 #python#3中while语句常常被用于循环执行某个程序,任何非0和非空null的值,都会被条件判断为True while 条 ...

  3. python银行利息问题_python入门教程NO.8 用python写个存款利息计算器

    python入门教程 python入门教程NO.8 用python写个存款利息计算器 本文涉及的python基础语法为def函数,return,函数的各参数示例,匿名函数等 函数初识 函数是一段组织好 ...

  4. python存款模块_python入门教程NO.8用python写个存款利息计算器

    python 入门教程 NO.8 用 python 写个存款利息计算器 本文涉及的 python 基础语法为 def 函数, return ,函数的各参数示例,匿名函数等 函数初识 函数是一段组织好的 ...

  5. python写一个系统-熬了一晚上,小白用Python写了一个股票提醒系统

    码农小马七夕节去相亲了,见了一个不错的姑娘,长的非常甜美!聊着聊着很投缘!通过介绍人了解到,对方也很满意--想着自己单身多年的生活就要结束啦,心里满是欢喜,美美哒!但是突然想起年初还有几万块在股市里面 ...

  6. python加油代码_python入门教程NO.5 用python写个自动选择加油站的小程序

    本文涉及的python基础语法为:if条件分支 Python条件分支是通过一条或者多条语句的执行结果True或者False来决定是否执行相应的代码块. if单向条件语法结构 if 判断条件: 代码块 ...

  7. python写一个文件下载器_python使用tcp实现一个简单的下载器

    上一篇中介绍了tcp的流程,本篇通过写一个简单的文件下载器程序来巩固之前学的知识. 文件下载器的流程如下: 客户端: 输入目标服务器的ip和port 输入要下载文件的名称 从服务器下载文件保存到本地 ...

  8. python写一个自动登录脚本_python实现自动登录

    利用python,可以实现填充网页表单,从而自动登录WEB门户. (注意:以下内容只针对python3) 环境准备: (1)安装python (2)安装splinter,下载源码 python set ...

  9. python输入城市找省份_Python入门教程(1)

    人生苦短,我用Python! Python(英语发音:/ˈpaɪθən/), 是一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于2020年12月09日底发明,第一个公开发行 ...

最新文章

  1. 老程序员的忠告:不要做浮躁的软件工程师
  2. php命名空间 动态 new,PHP命名空间(namespace)的动态访问及使用技巧_php实例
  3. objdump and readelf
  4. oracle存储过程多分支怎样写,如何写一个分段提交的存储过程啊
  5. linux命令编写四位数密码本,grub-crypt命令 – 对口令进行加密
  6. java获取ram_Java:ChronicleMap第2部分,超级RAM映射
  7. 一文读懂GaussDB(openGauss) 的六大关键技术特性
  8. IDEA设置自动导包功能
  9. classNotFound异常的一个原因
  10. 免费下载加速软件IDM,让你的下载不限速,高达10M每秒
  11. i3wm 获取window class
  12. vue项目引入阿里巴巴矢量图标库图标
  13. ASPX 生成html静态页面的问题
  14. Pocket PC访问PC上的Webservice
  15. 数据分析专题报告范文6篇_数据分析系列篇(6):如何写好一个专题的分析报告...
  16. 会计科目中的借贷理解
  17. 自学英语的几个网站(免费网站)
  18. docker search - 搜寻镜像
  19. (转)全球15个顶级技术类博客
  20. 手机端软件 小界面有“大江湖”

热门文章

  1. matlab 振动,基于matlab的振动系统仿真.doc
  2. 0402封装尺寸_电子元器件专题:③电容的封装有哪些种类?如何对这些封装选型
  3. Java的Jar文件说明
  4. Backup Exec 数据库空间不足
  5. [编程] Java8 Stream(流式计算) 常见的一些用法汇总
  6. CSDN为什么学生认证有些人显示学校名称,有些显示高校学生
  7. 【解决方案】“云端协同”,基于安防视频云服务EasyCVR构建雪亮工程监管视频平台
  8. 北理工C语言乐学46【猜数字】
  9. go程序设计语言-目录
  10. Android 剪贴板详解