python学习记录

  01 错误描述:

  OSError: [Errno 22] Invalid argument: 'E:\PycharmProjects\tyj_data_file\study_life.txt'

  用with open(file_name) as file_object:方式打开并读取文件出错,错误提示无效文件名

  错误原因:

  

  文件名虽然是直接从windows文件目录下拷贝的绝对路径,但是红色标记处提示\t,原来在python中\是转义字,而此时\t是制表字符。

  解决办法:

  第一种:直接用正斜杠/不用反斜杠\

  第二种:用在字符串的第一个引号之前加上r,可以将该字符串标记为原始字符串,不进行转义,如

      

  第三种:用两个反斜杠,因为每个反斜杠需要由另一个反斜杠字符来转义,如  E:\\PycharmProjects\\tyj_data_file\\study_life.txt

   PS:说明一下,往往在window中使用反斜杠,在OSX和Linux上使用正斜杠,若想要程序能运行在所有的操作系统中,则可以用os.path.join('')的方式统一处理

 02 python的输出语句

  首先我掌握了一种学习方式,例如要了解 print 函数的用途,可以使用 help(print) 来寻求帮助,通过这种方式我们可以了解到函数的参数、用法等。

  

  其次,python的格式化输出,我们知道print不能拼接字符串和数字,得要通过类型转换。这里介绍%用法,例如print("周长为:%.2f" %(math.pi*2*a))

  

03 尽量使用try-except语句、反向跟踪、日志方式来捕捉错误和异常,使用断言assert来捕捉非法情况,而不使用print进行调试

  断言主要是针对程序员犯的错误、是针对开发的,而不是针对用户犯的错误的。区别断言和异常,以及python中异常的类型

  这里附上一个混合异常、反向追踪、日志、断言的python项目,可以参考其用法。

# 输入圆的半径计算计算周长和面积
import  math,traceback,logging
logging.basicConfig(level=logging.DEBUG,format= '%(asctime)s - %(levelname)s - %(message)s') # 得放在程序开头
logging.debug('start of program')

def write_error_intxt():
    logging.debug('start of write_error')
    errorFile = open(r"E:\PycharmProjects\tyj_data_file\error_file.txt", 'w')  # 以覆盖重写的方式记录在文本中
    errorFile.write(traceback.format_exc())  # 写入错误的字符串形式
    errorFile.close()
    logging.debug('end of write_error')
    print("写入成功")

try:
    a = float(input("请输入圆的半径"))
    '''
    # 断言的用法,如想禁用可以用-O的方式运行python文件
    b = input("输入b")
    assert b == 'love' , '如果b不是love,则输出此语句'
    '''
    print("面积为%.2f" %(math.pi*a*a))
    print("周长为:%.2f" %(math.pi*2*a))
    logging.debug("end of program")
except Exception as e: # 可以有很多错误类型
    # 控制台输出
    print("错误发生:"+str(e))
    # 反向跟踪
    write_error_intxt()
View Code

04  使用Anaconda Prompt创建 Python3.5 的虚拟环境、安装numpy,都出现CondaHttpError的错误,肯定就是网络连接的问题了,查阅资料发现可能是网络挂了代理的原因,于是退出我的外网,重新安装,成功。

   

 05 jupyter notebook画图不显示只有坐标

  解决办法:

    在代码中加入一行%matplotlib inline

             

 

 

 

  附一个获取pycharm注册码地址:http://idea.lanyus.com/

 

posted @ 2019-06-30 11:09  陶雨洁  阅读(202)  评论(1编辑  收藏  举报