关于python web开发中的那些事?

1. 关于Django中使用 os.path.join() 拼接 BASE_DIR 存在的问题。

熟知 BASE_DIR 是项目的根路径

 然而经过 os.path.join() 的拼接却出现了怪异的事

 原因出在后者要拼接的路径前出现了斜杠反斜杠,去掉即可

 2. 读取文件内容时的编码问题。

对编码有了解的小伙伴们应该知道,常见读写文件操作的编码有gb2312、utf-8等等。如果操作的对象是一个文件或少量的,可以尝试性的手动更换编码。但批量读取文件内容,编码就是一个比较棘手的问题,因为并不知道某个文件使用的具体是那种编码。小编曾经尝试使用异常捕获去解决这个问题,如果gb2312编码报错,就走utf-8编码,但这也并非一个一劳永逸的方法。最好的解决方法是提前获取到文件的编码。(这里小编使用pandas读取csv文件做示例)

获取文件编码格式

import chardet


def get_file_encoding(file_path: str) -> str:
    """
    获取文件编码格式
    :param file_path: 文件路径
    :return: 文件的编码格式
    """
    with open(file_path,'rb') as f:
        tmp = chardet.detect(f.read())
        return tmp['encoding']

 至此读取文件内容再也不用考虑编码问题了。

 持续更行中~~~

猜你喜欢

转载自blog.csdn.net/hpl980342791/article/details/128172496