标题:python与excel的数据问题。
只看楼主
babyself
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-6-15
 问题点数:0 回复次数:2 
python与excel的数据问题。
小弟正在学习python用它写了个地址薄的程序,在快完工的时候遇到点问题,希望大家能帮帮忙。谢谢了。
这个是读excel的数据进去字典:
def ParseXlsUerator():
    '''读入excel数据进ab'''
    sheets = parse_xls('c:/Python26/address_book.xls')
    n=len(sheets)
    for k in range(n):
        sheet = sheets[ k ]
        sh_name = sheet[0]
           #提取表单n的数据
        sh_data = sheet[1]
    j=1
    m=0
    while(m<=n):
        while(0<=j<5):
            a=sh_data[0][j]
            if a=='':
                break
            b=sh_data[4][j]
            updateDict = {a:b}
            ab.update(updateDict)
            j=j+1
        m=m+1
这个是字典中的数据写入excel:
def write_ab():
    '''将字典写入EXCEL,需要加入非空行判断 否则覆盖'''
    i=1
    j=0
    for name, address in ab.items():
        tmpfile='c:/Python26/address_book.xls'
        f = open(tmpfile, 'wb')
        sheets =parse_xls(tmpfile)
        n=len(sheets)
        for k in range(n):
            sheet = sheets[ k]
            sh_name = sheet[0]
           #提取表单n的数据
            sh_data = sheet[1]

            
        m=0
        while(m<=n):
            while(1):
                a=sh_data[k][0]
                if a=='':
                    break
                i=i+1
            m=m+1
        sh_name.write(i,j,address.name)
        sh_name.write(i,j+1,address.email)
        sh_name.write(i,j+2,address.phone_number)
        sh_name.write(i,j+3,address.belong)
        sh_name.write(i,j+4,address.index)
现在几个问题:
1,出现个错误, a=sh_data[0][j]
KeyError: 0,网上没能找到为什么,自己也没能解决。
2,我的思路是将字典当做缓存,用两个函数实现地址薄的信息的存储。不知道有没其他更方便的方法。
3,获取的excel的表单名字是字符串无法用来.write
谢谢大家了
搜索更多相关主题的帖子: python excel 数据 
2010-06-15 14:10
a515200
Rank: 2
等 级:论坛游民
威 望:1
帖 子:18
专家分:94
注 册:2010-7-11
得分:0 
sheets没有定义。。所以跟sheets有关的变量都无效。你仔细看下错误代码。我也不清楚你要做什么不过你这则代码def ParseXlsUerator():
    '''读入excel数据进ab'''
    sheets = parse_xls('c:/Python26/address_book.xls')   
  不正确


    首先读的话。应该是这样的 sheets=open('c:/Python26/address_book.xls','r')  parse_xls看起来不像函数也不像有什么功能的代码  我是py2.5版本  你是哪个版本  
2010-07-31 14:02
KLML88422
Rank: 2
来 自:火星
等 级:论坛游民
威 望:1
帖 子:34
专家分:20
注 册:2010-11-12
得分:0 
上面的兄弟说的对,打开excel文件直接open就好了!
2010-11-18 10:27



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-310319-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.807858 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved