1.第一种方法直接用pandas读取数据处理

import pandas as pd

data = pd.read_excel("test.xls")
list = []
for i in data["票据号码"].values:
    list.append(str(i))
print(tuple(list))

2.第二种方法,自定义函数(很久以前,都是用这个读取的,时代变迁太快啦)

import openpyxl

from openpyxl.utils import get_column_letter, column_index_from_string

# 打开excel文件
wb = openpyxl.load_workbook('相对路径/shizuishan.xlsx')

# 获取表
sheet = wb.active
max_row = sheet.max_row

# columnB = sheet['D1':'D%d' % max_row]
columnB = sheet['B1':'B%d' % max_row]

# 获取B列对应的所有单元格对象
for column_cells in columnB:
    for cell in column_cells:
        # print(cell.coordinate, cell.value)
        # print("'" + str(cell.value)+ "'" + "," , end="")
        print("'" + str(cell.value) + "'" + ",",end="")
        # "'" + cell.value + "'" + ","
        # p=cell.value
        # str('cell')
        # print("'"+str(p)+"'"+",")

3.反序输出

  • 数字是字符串
a = '123456789'
print(a[::-1])
  • 数字是整型
a = 123456789
print(str(a)[::-1])

4.python操作多列excel数据,每一列数据储存在一个列表中

1.读取数据并封装
import numpy
from openpyxl import load_workbook
##读取路径
wb = load_workbook(filename=r'绝对路径/shizuishan.xlsx')
##读取名字为Sheet1的sheet表
ws = wb.get_sheet_by_name("Sheet1")
arr1 = []
arr2 = []
#循环取出来数据并封装数据
for row_A in range(1, 10000):
  #遍历第2行到10000行,第1列
  a1 = ws.cell(row=row_A, column=2).value
  ## 遍历第2行到10000行,第3列
  a2 = ws.cell(row=row_A, column=3).value
  if a1:
    # 写入数组1
    arr1.append(a1)
  if a2:
    # 写入数组2
    arr2.append(a2)
2.列表重组处理数据,列的数据按行号输出
for a,b in map(list,zip(arr1,arr2)):
    print(a+b)
3.输出的数据不换行输出
print(a,end=''# 需要加特殊符号的话字符拼接
print(“aaa”+“bbb”+“。”)

作者创作不易:有兴趣的宝宝们点击连接进去官方群聊

点击链接加入群聊【IT交流Java,Python,云计算,大数据
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐