Python科研使用代码笔记(截至20221025)

1.关于str.split()

该函数在不加限定符的前提下可自行分割带多个空格的字符串,使用str.split(' ')只能分割一个

2.路径中提取文件名

os.path.basename(path)提取出路径path中的文件名,而后用split可以继续分割文件名中的文件本名与后缀。

3.Python中的常用强制转换符号:

int()、str()、float()

4.读取文本并直接将文本读入一个list,或逐行遍历

with open(path) as fp: #打开path中的数据文本文件
    lines=fp.readlines() #将所有文本读入列表lines
    for ln in fp.readlines():#利用for循环对文本逐行遍历,ln即所在行内容

5.openpyxl的常用格式

#coding=utf-8
import openpyxl

#读取excelpath路径中的表格
excelpath=(u'E:\\example.xlsx')
wb = openpyxl.load_workbook(excelpath)
#读取工作簿wb中工作表E60C
sheet = wb['E60C']
#按规定格式向单元格中赋值
sheetcol = 1 + 6 * sta
sheet.cell(row=doy - 40, column=sheetcol, value=(stationstr[sta] + '-210' + str(doy)))
sheet.cell(row=doy - 40, column=sheetcol + 1, value=float(nitertime))
sheet.cell(row=doy - 40, column=sheetcol + 2, value=float(eitertime))
sheet.cell(row=doy - 40, column=sheetcol + 3, value=float(uitertime))
sheet.cell(row=doy - 40, column=sheetcol + 4, value=float(hitertime))
sheet.cell(row=doy - 40, column=sheetcol + 5, value=float(titertime))
#按规定格式读取excel表格中的值(待写)

#完成输入操作后保存文档
wb.save(excelpath)

6 函数组成格式

#coding=utf-8

def 函数名 (形参):
    函数体
    return 返回内容

7 遍历文件夹下的所有指定子文件夹

#coding=utf-8
#通过函数walkFile实现读取文件夹路径file的全部子文件夹及其子文件
def walkFile(file):
    FileList=[]
    for root, dirs, files in os.walk(file):

        # root 表示当前正在访问的文件夹路径
        # dirs 表示该文件夹下的子目录名list
        # files 表示该文件夹下的文件list

        # 遍历文件
        for f in files:
            FileList.append(os.path.join(root, f))
        # 遍历所有的文件夹
        # for d in dirs:
        #     print(os.path.join(root, d))
    return FileList

8.numpy的使用

声明指定数据类型,及指定行宽、列宽的二维数组:

import numpy as np
TowDList=np.empty([rowlen,collen],dtype=float)

逐行遍历二维数组:

for i in range(TwoDList.shape[0]):
    for j in range(TwoDlist.shape[1]):
        TwoDlist[i,j]=np.nan #将二维数组全部元素赋空值

单独提取二维数组一行或一列

TwoDList[1]
TwoDList[2]#获取二维数组中的一行
TwoDList[:,1]#获取二维数组中的一列
np.nanmean(TwoDList[:,1])将指定列表去空值后计算均值

9.matplotlib画图专题

#coding=utf-8
import matplotlib.pyplot as plt
import numpy as np
#设置坐标轴名称、字体、大小
plt.xlabel("测站名",fontdict={'family'='SimHei','size':12})
plt.xlabel("测站名",fontzise=12)
font={
'family': 'SimHei',
'weight': 'normal',
'size': 12,
}
plt.xlabel("测站名",font)
plt.ylabel("计算值/m",fontdict={'family'='SimHei','size':12})
#设置坐标轴刻度
plt.xticks(np.arange(-5,5,0.5),fontproperties=‘SimHei’,size=10,rotation=90)#X轴刻度值旋转90度
plt.yticks(np.arange(-2,2,0.3),fontproperties=‘SimHei’,size=10)
#设置刻度字体大小
plt.tick_params(labelsize=12)
#标题与字体大小
plt.title("station",fontdict={'family':'SimHei','size':12})
#图例与字体大小,列数,在图中位置设置
plt.legend(prop={'family':'SimHei','size':12})
plt.legend(fontsize=12,loc='upper right',bbox_to_anchor=(1.1,1.2))


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值