1、numpy.empty
 作用:根据给定的维度和数值类型返回一个新的数组,其元素不进行初始化。
 用法:numpy.empty(shape, dtype=float, order=‘C’)
2、logging.debug
 作用:Python 的日志记录工具,这个模块为应用与库实现了灵活的事件日志系统的函数与类。
 
 图片来源:
 https://docs.python.org/zh-cn/3/library/logging.html
 https://blog.csdn.net/weixin_41724044/article/details/81784974
3、assert函数
 https://docs.python.org/3/reference/simple_stmts.html#assert
 作用:Python assert(断言)用于判断一个表达式,在表达式条件为 false 的时候触发异常。断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况。
 用法:assert expression或assert expression [, arguments]。
 如果expression是True,那么什么反应都没有。但是如果expression是False,那么会报错AssertionError。
4、np.where函数
 (1)np.where(condition):返回值是满足condition的元素的下标;
 (2)np.where(condition, x, y):返回值是一个和condition的shape相同的numpy 数组,当满足条件condition时,返回值中的元素从x中取,否则从y中取。
5、python读取shapefile文件
import shapefile
sh=shapefile.Reader('./shp/shapefile_file.shp')
shapefile_records=sh.records()#records,according to arcgis fileds
 
6、python 中两个//表示:地板除,即先做除法(/),然后向下取整(floor)。
7、python netcdf: making a copy of all variables and attributes but one
 解决方法:https://stackoverflow.com/questions/15141563/python-netcdf-making-a-copy-of-all-variables-and-attributes-but-one
 代码:
import netCDF4 as nc
toexclude = ['ExcludeVar1', 'ExcludeVar2']
with netCDF4.Dataset("in.nc") as src, netCDF4.Dataset("out.nc", "w") as dst:
    # copy global attributes all at once via dictionary
    dst.setncatts(src.__dict__)
    # copy dimensions
    for name, dimension in src.dimensions.items():
        dst.createDimension(
            name, (len(dimension) if not dimension.isunlimited() else None))
    # copy all file data except for the excluded
    for name, variable in src.variables.items():
        if name not in toexclude:
            x = dst.createVariable(name, variable.datatype, variable.dimensions)
            dst[name][:] = src[name][:]
            # copy variable attributes all at once via dictionary
            dst[name].setncatts(src[name].__dict__)
 
或者(测试可用):
import netCDF4 as nc
import numpy as np
toexclude = ["TO_REMOVE"]
with nc.Dataset("orig.nc") as src, nc.Dataset("filtered.nc", "w") as dst:
    # copy attributes
    for name in src.ncattrs():
        dst.setncattr(name, src.getncattr(name))
    # copy dimensions
    for name, dimension in src.dimensions.iteritems():
        dst.createDimension(
            name, (len(dimension) if not dimension.isunlimited else None))
    # copy all file data except for the excluded
    for name, variable in src.variables.iteritems():
        if name not in toexclude:
            x = dst.createVariable(name, variable.datatype, variable.dimensions)
            dst.variables[name][:] = src.variables[name][:]
 
代码来源:https://stackoverflow.com/questions/15141563/python-netcdf-making-a-copy-of-all-variables-and-attributes-but-one
 Python setattr() 函数:
 功能:setattr() 函数对应函数 getattr(),用于设置属性值,该属性不一定是存在的。
 用法:setattr(object, name, value)
8、dataframe and series
 series 对象转字符串:df[['station']] = pd.Series(df['station'], dtype="string")
 筛选满足条件的行:df_new = df.loc[df['station'].str.contains('姓名')]
Python将循环过程中产生的dataframe,按行合并,最终输出一个csv文件:
merge_result = []
for file in os.listdir(csv_path):
    df = pd.read_csv(os.path.join(csv_path,file),
                     header = None,
                     names=['field1','field2'])
    merge_result .append(df_new)
df_all = pd.concat(merge_result , axis=0)
 
9、dataframe输出csv文件,中文出现乱码问题
 https://blog.csdn.net/chenpe32cp/article/details/82150074
df.to_csv("result.csv",encoding="utf_8_sig")
                



![[架构之路-123]-《软考-系统架构设计师》-操作系统-2-操作系统原理 - 存储层次结构与存储管理(寄存器、Cache、MMU、内存、外存、页表)](https://img-blog.csdnimg.cn/img_convert/a8e24d9bdaaa34796153ad055953d35e.png)













