Linux环境下Python编程注意事项
一、文件头部声明
1、文件头部
#!/usr/local/bin/python
# -*- coding:utf-8 -*-
2、声明作用
①指定"/usr/local/bin/python"目录下的python解释器执行python脚本。
②声明该文件的编码格式为 utf-8。
3、推荐声明
#!/usr/bin/env python3
# encoding: utf-8
可以根据PATH环境变量中指定的第一个python解释器,执行python脚本。
当创建多个Anaconda或者virtualenv虚拟环境时,可以使用各自虚拟环境中的python解释器来执行python脚本。
二、各个系统文件换行符的区别
操作系统自动决定文本文件的换行格式。
DOS/Windows的换行符:\r\n 即 CR/LF
UNIX/Linux的换行符:\n 即 LF
MAC OS的换行符:\r 即 CR
三、Windows文件格式转化成Linux
在windows上生成的文件传输至Linux之前需要进行格式转换。
def turn(file):
with open(file, 'rb') as f:
data = f.read()
encoding = chardet.detect(data)['encoding']
data_str = data.decode(encoding)
tp = 'LF'
if '\r\n' in data_str:
tp = 'CRLF'
data_str = data_str.replace('\r\n', '\n')
if encoding not in ['utf-8', 'ascii'] or tp == 'CRLF':
with open(file, 'w', newline='\n', encoding='utf-8') as f:
f.write(data_str)
print(f"{file}: ({tp},{encoding}) trun to (LF,utf-8) success!")
turn('*.csv')