有关彩票的python编程教程入门_python入门教程NO.6 用python做个简单的彩票号码统计分析工具...
本文涉及的python基礎(chǔ)語(yǔ)法是:字典、集合及for循環(huán)
字典的定義
字典也是一種可變的容器,它可以存儲(chǔ)任意的類型對(duì)象。
字典中的每個(gè)key: value鍵值對(duì)用冒號(hào) : 分割,不同鍵值對(duì)之間用逗號(hào) , 分割,整個(gè)字典包括在花括號(hào){}中 ,示例如下
dic = {key1 : value1, key2 : value2, key3 : value3}
python字典的健必須不可變(可以是字符串、數(shù)字、元組,不能是列表),如果一個(gè)字典內(nèi)部有相同的健,那么后面的健值會(huì)替換前面的同名健值
dic = {'a': 5, 'b': 8, 'c': 9 , 'a': 0}
print(dic['a'])
#輸出:0
print(dic)
#輸出:{'a': 0, 'b': 8, 'c': 9}
如果用不在字典里面的健獲取數(shù)據(jù),會(huì)發(fā)生如下的錯(cuò)誤
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': '寫(xiě)代碼'}
#通過(guò)賦值的方式,增加新的鍵值對(duì)
dic['age'] = 28
print(dic)
#輸出:{'name': 'python攻城獅', 'gender': '男', 'hobby': '寫(xiě)代碼', 'age': 28}
#通過(guò)del方法,可以刪除指定的鍵值對(duì)
dic = {'name': 'python攻城獅', 'gender': '男', 'hobby': '寫(xiě)代碼', 'age': 28}
del dic['gender']
print(dic)
#輸出:{'name': 'python攻城獅', 'hobby': '寫(xiě)代碼', 'age': 28}
#可以直接通過(guò)賦值的方式修改指定健的值
dic = {'name': 'python攻城獅', 'hobby': '寫(xiě)代碼', 'age': 28}
dic['age'] = 30
print(dic['age']) #輸出:30
#查找字典里面健的值
dic = {'name': 'python攻城獅', 'hobby': '寫(xiě)代碼', 'age': 28}
print(dic['name']) #輸出:python攻城獅
#判斷是否存在該健
dic = {'name': 'python攻城獅', 'hobby': '寫(xiě)代碼', 'age': 28}
if 'interest' in dic:
print('True')
else:
print('False')
#輸出:False 即表明該健不在字典dic中,if...else...條件判斷語(yǔ)句,我們后面會(huì)講到
字典的內(nèi)置函數(shù)和方法
Python字典包含了以下內(nèi)置函數(shù):
函數(shù)
描述
cmp(dic1, dic2)
比較兩個(gè)字典元素。
len(dic)
計(jì)算字典元素個(gè)數(shù),即鍵的總數(shù)。
str(dic)
輸出字典可打印的字符串表示。
type(variable)
返回輸入的變量類型,如果變量是字典就返回字典類型。
Python字典包含了以下內(nèi)置方法:
函數(shù)方法
描述
dic.clear()
刪除字典內(nèi)所有元素
dic.copy()
返回一個(gè)字典的淺復(fù)制
dic.fromkeys(seq[, val])
創(chuàng)建一個(gè)新字典,以序列 seq 中元素做字典的鍵,val 為字典所有鍵對(duì)應(yīng)的初始值
dic.get(key, default=None)
返回指定鍵的值,如果值不在字典中返回default值
dic.has_key(key)
如果鍵在字典dict里返回true,否則返回false
dic.items()
以列表返回可遍歷的(鍵, 值) 元組數(shù)組
dic.keys()
以列表返回一個(gè)字典所有的鍵
dic.setdefault(key, default=None)
和get()類似, 但如果鍵不存在于字典中,將會(huì)添加鍵并將值設(shè)為default
dic.update(dict2)
把字典dict2的鍵/值對(duì)更新到dict里
dic.values()
以列表返回字典中的所有值
pop(key[,default])
刪除字典給定鍵 key 所對(duì)應(yīng)的值,返回值為被刪除的值。key值必須給出。 否則,返回default值。
popitem()
返回并刪除字典中的最后一對(duì)鍵和值。
集合
集合(set)是一個(gè)無(wú)序且不重復(fù)元素序列,可以使用{}或者set()來(lái)創(chuàng)建集合,但是要注意的是:
創(chuàng)建空集合必須使用set(),因?yàn)閧}創(chuàng)建的是空字典
#創(chuàng)建集合
a = {1, 3 , 5 , 8}
或
a = set('abcbacf')
print(a) #輸出:{'b', 'f', 'a', 'c'} 當(dāng)我們想要去掉一段序列重復(fù)項(xiàng)時(shí)可以使用集合
python兩個(gè)集合之間的運(yùn)算:假定我們現(xiàn)在有兩個(gè)集合,分別是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的對(duì)稱差集(不同時(shí)包含于a和b的元素)
print(a ^ b) #輸出:{1, 4, 5, 6}
集合的函數(shù)方法
方法
描述
add()
為集合添加元素
clear()
移除集合中的所有元素
copy()
拷貝一個(gè)集合
difference()
返回多個(gè)集合的差集
difference_update()
移除集合中的元素,該元素在指定的集合也存在。
discard()
刪除集合中指定的元素
intersection()
返回集合的交集
intersection_update()
返回集合的交集。
isdisjoint()
判斷兩個(gè)集合是否包含相同的元素,如果沒(méi)有返回 True,否則返回 False。
issubset()
判斷指定集合是否為該方法參數(shù)集合的子集。
issuperset()
判斷該方法的參數(shù)集合是否為指定集合的子集
pop()
隨機(jī)移除元素
remove()
移除指定元素
symmetric_difference()
返回兩個(gè)集合中不重復(fù)的元素集合。
symmetric_difference_update()
移除當(dāng)前集合中在另外一個(gè)指定集合相同的元素,并將另外一個(gè)指定集合中不同的元素插入到當(dāng)前集合中。
union()
返回兩個(gè)集合的并集
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循環(huán)
Python中for循環(huán)可以循環(huán)遍歷任何序列的項(xiàng)目,例如字符串、列表、元組、字典等,語(yǔ)法結(jié)構(gòu)為for...in...:
#遍歷一個(gè)字符串
a = 'hello攻城獅'
for i in a: #這里的i可以使用任何變量代替
print(i)
#輸出:
h
e
l
l
o
攻
城
獅
#遍歷一個(gè)列表
lists = [1, 8 , 9 , 5]
for e in lists:
print(e)
#輸出:
1
8
9
5
#遍歷一個(gè)字典
dic = {'name': 'python攻城獅', 'hobby': '寫(xiě)代碼', 'age': 28}
for i in dic:
print(i)
#輸出:直接遍歷字典,會(huì)默認(rèn)遍歷字典的健
name
hobby
age
#遍歷字典的值
dic = {'name': 'python攻城獅', 'hobby': '寫(xiě)代碼', 'age': 28}
for i in dic.values():
print(i)
#輸出:
python攻城獅
寫(xiě)代碼
28
#遍歷字典的鍵值對(duì)
dic = {'name': 'python攻城獅', 'hobby': '寫(xiě)代碼', 'age': 28}
for i in dic.items():
print(i)
#輸出:
('name', 'python攻城獅')
('hobby', '寫(xiě)代碼')
('age', 28)
用python做個(gè)彩票統(tǒng)計(jì)分析工具
假如我們一共有5組連續(xù)的彩票開(kāi)獎(jiǎng)號(hào)碼,他們分別是
期數(shù)
開(kāi)獎(jiǎng)號(hào)碼
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'
我們需要統(tǒng)計(jì)一下這5期彩票中,每個(gè)號(hào)碼出現(xiàn)的次數(shù),并將次數(shù)作為號(hào)碼的值,以字典的形式打印出來(lái)
請(qǐng)根據(jù)要求,開(kāi)始你的編程吧!
總結(jié)
以上是生活随笔為你收集整理的有关彩票的python编程教程入门_python入门教程NO.6 用python做个简单的彩票号码统计分析工具...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 转:机器人工程师学习计划(YY硕)(后悔
- 下一篇: python的string与Unicod