python
MonCheri_Flowers
Change the world by program
展开
-
python简单的数据处理(文件)
1.数据分割CSDNfilepath=r"这里填要处理的文件路径"CSDNpasswordpath=r"这里自定义截取密码后的路径\截取密码.txt"CSDNreadfile=open(CSDNfilepath,"r",errors="ignore")CSDNpasswordfile=open(CSDNpasswordpath,"w")while True: line = CSDN原创 2017-07-11 20:38:43 · 509 阅读 · 0 评论 -
Python在列表,字典,集合中根据条件筛选数据
# 随机生成10个数区间(-10, 10)from random import randintdata = [randint(-10, 10) for _ in xrange(10)]1.操作列表1.使用filter函数""" filter(过滤函数,列表) lambda x: 匿名函数, 参数(依次迭代列表中的每一个参数) 返回Boolean值 x >= 0原创 2017-09-19 08:20:49 · 1079 阅读 · 0 评论 -
python字符串处理技巧
1. 调整字符串中文本的格式"""把"yyyy-mm-dd" 改为 "yyyy/mm/dd"解决方法:使用正则表达式re.sub()方法做字符串替换,利用正则表达式的捕获组(加括号),抓获每个部分内容,在替换字符串中调整各个捕获组的顺序re.sub('正则表达式', '(使用原始字符串,转义)组1\组2\...', 文本)参数2:月/日/年的形式输出。"""# log =原创 2017-09-28 05:28:28 · 268 阅读 · 0 评论 -
python 为元组的每个元素命名
访问元组的信息时,我们使用索引(index)访问,会大量降低程序可读性,所以用以下两种方式可以解决这个问题。定义类似于其他语言的枚举类型,也就是定义一系列数值常量使用标准库中 collections.namedtuple 替代内置tuple方法一:NAME = 0AGE = 1SEX = 2EMAIL = 3student = ('Dimples', 23, '女',原创 2017-09-20 07:59:47 · 867 阅读 · 0 评论 -
python根据字典中值的大小,对字典中的项排序
根据成绩高低,计算排名1.利用zip将字典数据转化元组from random import randintd = {x: randint(60, 100) for x in 'abcdef'}print dprint sorted(d)print zip(d.itervalues(), d.iterkeys())print sorted(zip(d.itervalues()原创 2017-09-21 08:40:28 · 1923 阅读 · 0 评论 -
python快速找到多个字典中的公共键
""" 第一轮:{'a': 1, 'b': 2} 第二轮:{'c': 1, 'd': 2} ... ... 统计出钱N轮,每场比赛都有进球的球员"""方法一:(效率低)随机产生进球成员(随机取样)s = sample('abcdefg', randint(3, 6))print ss1 = {x: randint(1, 4) for x原创 2017-09-22 05:02:38 · 478 阅读 · 0 评论 -
python字典保持有序
"""使用collections.OrderedDict(有序字典)以OrderedDict替代内置字典Dict,依次将选手成绩存入OrderedDict"""from collections import OrderedDictd = OrderedDict()d['aaa'] = (1, 45)d['bbb'] = (2, 47)d['ccc'] = (3, 50)pri原创 2017-09-22 08:14:08 · 314 阅读 · 0 评论 -
python统计序列中元素出现的频率
随机序列,找出出现次数最高的3个元素,输出出现次数from random import randintdata = [randint(0, 20) for _ in xrange(30)]print data# data作为键, 0作为值c = dict.fromkeys(data, 0)for x in data: c[x] += 1print c""" 使用原创 2017-09-21 06:09:24 · 1519 阅读 · 0 评论 -
python正则表达式
最近做爬虫,把python基础的正则表达式又重新过了一遍。常规匹配import recontent = 'Hello 123 4567 World_this is a regex Demo'print(len(content))result = re.match("^Hello\s\d\d\d\s\d{4}\s\w{10}.*Demo$", content)pr原创 2017-10-30 10:57:13 · 396 阅读 · 0 评论 -
python模块之openpyxl
openpyxl模块是一个读写Excel的python库,是一个比较综合的工具,能够同时读取和修改Excel文档。1.安装模块pip3 install openpyxl2.基本用法了解Excel 基本概念,Excel中列以字幕命名,行以数字命名,比如左上角第一个单元格的坐标为A1,下面的为A2,右边的B1。openpyxl中有三个不同层次的类:Workbook是一个excel工作表Workshee...原创 2018-03-30 18:30:06 · 3263 阅读 · 2 评论 -
matplotlib入门1
最近需要用到matplotlib来绘图,之前没接触过只能加快速度学习一下。Matplotlib 可能是 Python 2D-绘图领域使用最广泛的套件。它可以轻松地将数据图形化,并且提供多样化的输出格式。1.设置名称、大小、绘制样式、颜色、线宽import matplotlib.pyplot as pltimport numpy as npx = np.linspace(-3, 3, 50)...原创 2018-05-23 19:32:13 · 388 阅读 · 0 评论 -
python拆分含有多种分隔符的字符串
两种方法:'''1.使用split方法,每次处理一种分隔符2.正则表达式'''str = 'dimples 1994 0.0 5454 \\2017/9.27 "haha" '方法一def mySplit(s, ds): res = [s] for d in ds: t = [] map(lambda x : t.exte原创 2017-09-27 08:08:49 · 968 阅读 · 0 评论 -
python如何使用生成器函数实现可迭代对象
实际案例实现一个可迭代对象的类,它能迭代出给定范围内所有素数:pn = PrimeNumbers(1, 30)for k in pn: print k123输出结果为:2 3 5 7 11 13 17 19 23 291解决方案:将该类的__iter__方法实现成生成器函数,每次yield返回一个素数。有了解决方案后,我们首先要了解一下什么是生成器转载 2017-09-25 20:40:26 · 929 阅读 · 0 评论 -
python可迭代对象和迭代器对象
由python内置函数iter得到一个迭代器对象, 由可迭代对象得到迭代器l = ['1', '2', '3', '4']s = 'dimples'for x in l: print x列表和字符串是可迭代对象列表满足了特殊的接口: l.__iter__()列表调用iter(l),实际上内部调用了l.__iter__()字符串并没有这个方法,但是有s.__getitem_原创 2017-09-23 08:13:40 · 634 阅读 · 0 评论 -
python键盘输入五个数字,判断是否是回文数
键盘输入五个数字,判断是否是回文数num = eval(input("请输入一个五位数:"))strNum = str(num) listNum = []newList = []if strNum.isdigit() and len(strNum) == 5: for i in range(0, len(strNum)): listNum.append(st原创 2017-07-08 16:26:58 · 9039 阅读 · 0 评论 -
python打印翻转三角形
编写函数如上模式。提示用户输入一个数n,然后调用displayPattern(n)来显示这种模式。def displayPattern(n): dict = {} for i in range(0, int(n)): ''' int(i)+ 2:左闭右开 eg: n = 3, i =原创 2017-07-07 08:30:06 · 4326 阅读 · 0 评论 -
第一个python程序
第一个python程序:安装好python后,在命令行输入:python将直接进入python。然后在命令行提示符>>>后面输入:>>>print('Hello World!')可以看到,随后在屏幕上输出:Hello World!我们还可以把Python程序hello.py改成一个可执行的脚本,直接执行:#!/usr/bin/env python原创 2017-06-27 20:21:04 · 362 阅读 · 0 评论 -
python笔记1_标识符_保留字_注释_字符串
标识符•第一个字符必须是字母表中字母或下划线'_'。•标识符的其他的部分有字母、数字和下划线组成,允许汉字。•标识符对大小写敏感。 python保留字保留字即关键字,我们不能把它们用作任何标识符名称。Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:>>> import keyword>>> keyword.kwlis原创 2017-06-27 20:50:23 · 1458 阅读 · 0 评论 -
python笔记3_集合与字典
1.Set集合无序不重复元素的序列。可以使用大括号{} 或者 set()函数创建集合。注意:创建一个空集合必须用set()而不是{};{} 是用来创建一个空字典。#!/usr/bin/python3student= {'Tom','Jim','Mary','Tom','Jack','Rose'}print(st原创 2017-06-29 21:13:29 · 339 阅读 · 0 评论 -
python笔记2_列表和元组
exec和eval语句exec:执行储存在字符串或文件中的Python语句。我们可以在运行时生成一个包含Python代码的字符串,然后使用exec语句执行这些语句。例:>>> exec ('print ("Hello World")')Hello World(这边必须加单引号,否则会报错)Python中变量不需要声明。每个变量在使用前都必原创 2017-06-28 19:36:20 · 500 阅读 · 0 评论 -
python笔记4_运算符和判断
行与缩进python最具特色的就是使用缩进来表示代码块,不需要使用大括号({})。缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。实例如下:if True: print("True")else: print("False")以下代码最后一行语句缩进数的空格数不一致,会导致运行错误:if True:原创 2017-07-01 16:39:07 · 767 阅读 · 0 评论 -
python笔记5_循环
Python提供了for循环和while循环-while 循环 -for循环支持以下循环控制语句:-break语句:在执行过程中跳出循环,并且跳出整个循环-continue语句:跳出本次循环,进入下一次循环-pass语句:pass是空语句while 判断条件:执行语句......例:原创 2017-07-04 19:35:14 · 292 阅读 · 0 评论 -
python中的二维列表(实例)
1. 使用输入值初始化列表nums = []rows = eval(input("请输入行数:"))columns = eval(input("请输入列数:"))for row in range(rows): nums.append([]) for column in range(columns): num = eval(input("请输入数字:"))原创 2017-07-09 15:04:58 · 60770 阅读 · 0 评论 -
python编写一个函数,输入n为偶数时,调用函数求1 / 2 + 1 / 4 + ... + 1 / n, 当输入n为奇数时,调用函数1 / 1 + 1 / 3 + ... + 1 / n(指针函数
def even(num): s = 0 for i in range(2, num+1, 2): s += 1 / i return sdef podd(num): s = 0 for i in range(1, num+1, 2): s += 1 / i return sdef dcall(fp, n): s原创 2017-08-11 11:02:45 · 11787 阅读 · 2 评论 -
matplotlib入门2
import matplotlib.pyplot as pltimport numpy as npx = np.linspace(-3, 3, 50)y = 2*x + 1plt.figure(num=1, figsize=(4,5))plt.plot(x,y,)ax = plt.gca()ax.spines['right'].set_color('none')ax.spin...原创 2018-05-28 19:50:16 · 427 阅读 · 0 评论