python学习常用功能函数封装

此篇将常用功能函数封装,供以后使用。

一、python将二维列表转置

def transpose(matrix):
  new_matrix = []
  for i in range(len(matrix[0])):
    matrix1 = []
    for j in range(len(matrix)):
      matrix1.append(matrix[j][i])
    new_matrix.append(matrix1)
  return new_matrix

 

二、python读取xlsx文件

这里读取的df是pandas里的DataFrame格式数据

import pandas as pd 

df = pd.read_excel("正数据矩阵.xlsx")

#df = df.T    #python默认每行是一个样本,如果数据每列是一个样本的话,转置一下即可

 

三、python读取csv文件

import csv
csvFile = open("D:\Python\Ynew.csv","r")
reader = csv.reader(csvFile)
data = []
for item in reader:
data.append(item)
csvFile.close()

四、读取csv文件并按行存入列表

# -*- coding=utf-8 -*-
import csv 
csv_file=open('D:/scores.csv')  #打开csv文件
csv_reader_lines = csv.reader(csv_file)    #逐行读取csv文件
date=[]     #创建列表准备接收csv各行数据
number = 0
for one_line in csv_reader_lines:
  date.append(one_line)  #将读取的csv分行数据按行存入列表‘date’中
  number  = number + 1 #统计行数

四、python读取txt文件

filename = "test.txt"

drugs = [] # 数据列表

with open(filename) as file:  #这里文件有三列数据
  for line in file:
    head =line.split()[0]
    tail =line.split()[1]
    w =line.split()[2]  #如果节点使用数组表示的可以将str(x)改为int(x)
    if head not in drugs:
      drugs.append(head)
    if tail not in drugs:
      drugs.append(tail)

 

五、python将二维列表转化为Excel表

def output_excel(list1):# 二维列表转化成Excel表(new1.xls)
output = open('要保存的文件名.xls', 'w', encoding='gbk')
# output.write('name\tgender\tstatus\tage\n') 首先输出的第一行(表头)
for i in range(len(list1)):
for j in range(len(list1[i])):
output.write(str(list1[i][j])) # write函数不能写int类型的参数,所以使用str()转化
output.write('\t') # 相当于Tab一下,换一个单元格
output.write('\n') # 写完一行立马换行
output.close()

六、python将字典写入csv文件

from openpyxl import Workbook
wb = Workbook()
ws = wb.active
for i,j in fangji.items():  # fangji是一个字典
      j.insert(0,i)
     ws.append(j)
wb.save("C:\\Users\\admin\Desktop\\文件名.xls")

七、判断字符串是否为汉字

if '\u4e00' <= ch <= '\u9fff':
  # 当ch为汉字时要做的事
  ......

 八、正常显示图中的指数坐标

# 正常显示指数
matplotlib.rcParams.update(
{
'text.usetex': False,
'font.family': 'stixgeneral',
'mathtext.fontset': 'stix',
})

posted @ 2019-05-30 21:53  TanLer  阅读(3110)  评论(0编辑  收藏  举报