精华内容
下载资源
问答
  • python汇总

    2017-12-25 20:51:10
    python基本语法汇总

    文件开始注解

    # 指定脚本调用方式
    #!/usr/bin/env python
    
    # 配置 utf-8 编码
    # -*- coding: utf-8 -*-

    判断入口:

    可以根据__name__关键字来判断是否是直接使用 python 命令执行

    if __name__ == '__main__':
      函数;

    模块(Module)

    Python 某一单个源码文件即 Python 的某一模块 ,其可以存放 类、函数与全局变量;这个文件就是一个模块。

    例:
    util.py 其中文件名util为模块名字。

    包(Package)

    python 包 是指模块集合的文件夹,往往由 init.py 指明某个文件夹为包:

    包是一个有层次的文件目录结构,它是由多个模块或多个子包组成的程序执行环境。

    具体实现指的是 :
    包是一个一定包含__init__.py文件 和 其它 模块 或 子包的 大文件夹。

    其他代码中指代的库,是某些相似功能的类 或者 函数集合,如图像识别库等等。。。

    表达式与控制流

    条件选择

    Python 中使用 if、elif、else 来进行基础的条件选择操作

    循环遍历

    for-in 可以用来遍历数组与字典
    按数字顺序循环,可以使用 Python 内置的 range 函数:

    基本数据类型

    • Number: 数值类型

    • 布尔类型
      Python 提供了常见的逻辑操作符,但 Python 中并没有使用 &&、|| 等,而是直接使用了英文单词and or

    • String: 字符串
      Python 2 中支持 Ascii 码的 str() 类型,独立的 unicode() 类型,没有 byte 类型;
      Python 3 中默认的字符串为 utf-8 类型,并且包含了 bytebytearray 两个字节类型:

    常见string操作

    str[0:4]       取0-4截断
    len(str)       返回长度
    
    str.replace("-", " ")       将'-'替换为' '
    ",".join(list)              在','末尾加入list所指代字符串
    
    "hi {0}".format('j')        format格式化字符串
    
    str.find(",")               查找
    str.index(",")              定位
    str.count(",")              计数
    str.split(",")              按','分割
    
    str.lower()                 都转小写
    str.upper()                 都转大写
    str.title()                 标题格式,句子开头字母大写
    
    str.lstrip('ch')                移除左边头部所有'ch'
    str.rstrip('ch')                移除右边头部所有'ch'
    str.strip('ch')                 移除俩边头部所有'ch'
    
    str.islower()                   判断是否都为小写
    
    # 移除所有的特殊字符   re正则表达式模块
    re.sub('[^A-Za-z0-9]+', '', mystring) 

    使用内建函数进行强制类型转换:

    int(x [,base ])x转换为一个整数  
    long(x [,base ])x转换为一个长整数  
    float(x )x转换到一个浮点数  
    
    complex(real [,imag ])  创建一个复数  
    
    str(x )                 将对象 x 转换为字符串  
    repr(x )                将对象 x 转换为表达式字符串  
    eval(str )              用来计算在字符串中的有效Python表达式,并返回一个对象  
    
    tuple(s )               将序列 s 转换为一个元组  
    list(s )                将序列 s 转换为一个列表  
    chr(x )                 将一个整数转换为一个字符  
    unichr(x )              将一个整数转换为Unicode字符  
    
    ord(x )                 将一个字符转换为它的整数值  
    hex(x )                 将一个整数转换为一个十六进制字符串  
    oct(x )                 将一个整数转换为一个八进制字符串  

    Regex: 正则表达式

    import re
    
    # 判断是否匹配 第一个参数为正则表达式,str为匹配字符串
    re.match(r'^[aeiou]', str)
    
    # 第二个参数将替换  所匹配到的所有字符串
    re.sub(r'^[aeiou]', '?', str)
    re.sub(r'(xyz)', r'\1', str)
    # 编译生成独立的 正则表达式 对象
    expr = re.compile(r'^...$') 
    expr.match(...)
    expr.sub(...)
    展开全文
  • Python 汇总

    2020-06-02 01:25:59
  • 主要介绍了利用python汇总统计多张Excel,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
  • 利利用用python汇汇总总统统计计多多张张Excel 这篇文章主要介绍了利用python汇总统计多张Excel帮助大家更好的理解和学习python感兴趣的朋友可以了解 下 为什么 来 多的非程序员白领都开始学习 Python 他们可能并...
  • 为什么越来越多的非程序员白领都开始学习 Python ?他们可能并不是想要学习 Python 去爬取一些网站从而获得酷酷的成就感,而是工作中遇到好多数据分析处理的问题,用 Python 就可以简单高效地解决。本文就通过一个...

    为什么越来越多的非程序员白领都开始学习 Python ?他们可能并不是想要学习 Python 去爬取一些网站从而获得酷酷的成就感,而是工作中遇到好多数据分析处理的问题,用 Python 就可以简单高效地解决。本文就通过一个实际的例子来给大家展示一下 Python 是如何应用于实际工作中高效解决复杂问题的。

    背景

    小明就职于一家户外运动专营公司,他们公司旗下有好多个品牌,并且涉及到很多细分的行业。小明在这家公司任数据分析师,平时都是通过 Excel 来做数据分析的。今天老板丢给他一个任务:下班前筛选出集团公司旗下最近一年销售额前五名的品牌以及销售额。

    对于 Excel 大佬来说,这不就是分分钟的事吗?小明并没有放在眼里,直到市场部的同事将原始的数据文件发给他,他才意识到事情并没有那么简单:

    202092293554829.jpg?202082293610

    这并不是想象中的排序取前五就行了。这总共有90个文件,按常规的思路来看,他要么将所有文件的内容复制到一张表中进行分类汇总,要么将每张表格进行分类汇总,然后再最最终结果进行分类汇总。

    想想这工作量,再想想截止时间,小明挠了挠头,感觉到要渐渐头秃。

    思路分析

    这种体力活,写程序解决是最轻松的啦。小明这时候想到了他的程序员好朋友小段,于是他把这个问题抛给了小段。

    小段缕了下他那所剩无几的头发,说:so easy,只需要找潘大师即可。

    小明说:你搞不定吗?还要找其他人!

    小段苦笑说:不不不,潘大师是 Python 里面一个处理数据的库,叫 Pandas ,俗称 潘大师。

    小明说:我不管什么大师不大师,就说需要多久搞定。

    小段说:给我几分钟写程序,再跑几秒钟就好了!

    小明发过去了膜拜大佬的表情。

    小段略微思考了下,整理了一下程序思路:

    计算每张表每一行的销售额,用"访客数 * 转化率 * 客单价”就行。

    将每张表格根据品牌汇总销售额。

    将所有表格的结果汇总成一张总表

    在总表中根据品牌汇总销售额并排序

    编码

    第零步,读取 Excel :

    import pandas as pd

    df = pd.read_excel("./tables/" + name)

    第一步,计算每张表格内的销售额:

    df['销售额'] = df['访客数'] * df['转化率'] * df['客单价']

    第二步,将每张表格根据品牌汇总销售额:

    df_sum = df.groupby('品牌')['销售额'].sum().reset_index()

    第三步,将所有表格的结果汇总成一张总表:

    result = pd.DataFrame()

    result = pd.concat([result, df_sum])

    第四步,在总表中根据品牌汇总销售额并排序:

    final = result.groupby('品牌')['销售额'].sum().reset_index().sort_values('销售额', ascending=False)

    最后,我们来看看完整的程序:

    import pandas as pd

    import os

    result = pd.DataFrame()

    for name in os.listdir("./tables"):

    try:

    df = pd.read_excel("./tables/" + name)

    df['销售额'] = df['访客数'] * df['转化率'] * df['客单价']

    df_sum = df.groupby('品牌')['销售额'].sum().reset_index()

    result = pd.concat([result, df_sum])

    except:

    print(name)

    pass

    final = result.groupby('品牌')['销售额'].sum().reset_index().sort_values('销售额', ascending=False)

    pd.set_option('display.float_format', lambda x: '%.2f' % x)

    print(final.head())

    最后的结果是这样的:

    品牌 销售额

    15 品牌-5 1078060923.62

    8 品牌-17 1064495314.96

    4 品牌-13 1038560274.21

    3 品牌-12 1026115153.00

    13 品牌-3 1006908609.07

    可以看到最终的前五已经出来了,整个程序运行起来还是很快的。

    几分钟之后,小段就把结果给小明发过去了,小明感动得内牛满面,直呼改天请吃饭,拜师学艺!

    总结

    本文主要是想通过一个实际的案例来向大家展示潘大师(Pandas)的魅力,特别是应用于这种表格处理,可以说是太方便了。写过程序的可能都有点熟悉的感觉,这种处理方式有点类似于 SQL 查询语句。潘大师不仅能使我们的程序处理起来变得更简单高效,对于需要经常处理表格的非程序员也是非常友好的,上手起来也比较简单。

    以上就是利用python汇总统计多张Excel的详细内容,更多关于python汇总统计多张Excel的资料请关注脚本之家其它相关文章!

    展开全文
  • python 汇总多个excel文件的特定列到同一新文件多个表 #编程小白的初尝试# 尝试将多个excel 文件中的特定列汇总,例如多个文件的A列汇总到同一个表格中,这种单纯复制粘贴的事情就交给代码吧。 例如有12个文件,每...

    python 汇总多个excel文件的特定列到同一新文件多个表

    #编程小白的初尝试#

    尝试将多个excel 文件中的特定列汇总,例如多个文件的A列汇总到同一个表格中,这种单纯复制粘贴的事情就交给代码吧。

    件
    例如有12个文件,每个文件的格式相同,如下,都共有16列数据,其中A列我是不需要的,故从B列开始。
    在这里插入图片描述

    代码如下

    import numpy  as np
    import xlrd
    import xlwt
    import time
    
    
    
    time_start=time.time()
    
    #创建一个Workbook对象,相当于创建了一个Excel文件
    book=xlwt.Workbook(encoding="utf-8",style_compression=0)
    
    for b in range(1,16,1):   #b为读取的列数,从B列开始
    
    
    
     # 创建一个sheet对象,一个sheet对象对应Excel文件中的一张表格。
     sheetb = book.add_sheet('sheet'+str(b)+'', cell_overwrite_ok=True)
    
    
     for a in range(1,13,1):   #读取文件
    
      rawdatabook = xlrd.open_workbook(r'd:\\data\\wenjian'+str(a)+'.xls')
      # 获取所有sheet
      sheet_name = rawdatabook.sheet_names()[0]
    
      # 根据sheet索引或者名称获取sheet内容
      sheet = rawdatabook.sheet_by_index(0)       # sheet索引从0开始
      
      # sheet的名称,行数,列数
      print (sheet.name,sheet.nrows,sheet.ncols)
    
    
    
      for i in  range(1,sheet.nrows,1):
    
       data = sheet.col_values(b)[0:]    #读取数据
       sheetb.write(i,a,data[i])  #写入数据
     
     print(b)  #每复制完一列显示一次
    
    
    
    book.save('d:\11.xls')    #保存文件
    
    
    
    time_end=time.time()
    print('totally cost',time_end-time_start)    #运行时间
    
    print("全部搞掂~!")
    

    在这里插入图片描述

    最后效果如图,之前的每一特定列都分别汇总到独立的sheet中。

    12个文件,每个文件15列数据,最后总用时在一个小时左右。总体还是比手动快,不知道是不是还有更加简便快捷的处理方式,希望各位大神多多指教~!

    PS:编程小白的单纯分享,不喜勿喷~!(狗头保命)

    碰巧今天是老贝的生日,祝红魔永远的7号生日快乐~!(附图一张)

    在这里插入图片描述

    展开全文
  • Python 汇总多个Excel表数据

    千次阅读 2019-11-19 01:13:12
    本文使用xlrd模块读取Excel,使用openpyxl模块写入Excel,可将同表头结构的数据汇总至同一Excel文件中。 该小工具应该是网上同类小工具中效率较高的,只需要单次循环即可解决。 代码如下: # 汇总相同表头的Excel...
  • 转 - Python汇总

    2012-01-17 21:12:35
    最近要用Python,找了一下,有篇文档不错,转一下,留个标记。 原址如下:http://www.itpub.net/thread-1319231-1-1.html   Python是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大且完善的通用型...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,911
精华内容 7,564
关键字:

python汇总

python 订阅