美文网首页
十个经验点总结(1)

十个经验点总结(1)

作者: ZzzZBbbB | 来源:发表于2019-03-07 13:06 被阅读0次
  • 命令行报错显示:SyntaxError: Non-ASCII character '\xe7' in file
    原因:程序编码出了问题
    解决方案:脚本开头加上:#-*- coding: UTF-8 -*-
    目前python3.x中不会出现这样的问题,上述问题只会在python2.x中出现,原因是在python2.x中默认使用ASCII编码,所以不能随便使用中文,而在python3.x中默认使用Unicode协议的utf-8编码 (关于编码问题,还不是特别能理顺,看来需要之后博文见了~)

  • python中没有自增自减符,但是可以使用++ /--,虽然没什么意义
    i+=1 不等于++i ; ++i 等价于 +(+i) ; +++++++i == i 返回 True
    《learning python》的解释:although Python now supports statements like X += Y, it still does not have C’s auto-increment/decrement operators (e.g., X++, −−X). These don’t quite map to the Python object model because Python has no notion of in-place changes to immutable objects like numbers。

  • 关于str和repr的简单理解:
    str()能以合理的方式将值转换为用户看的懂得字符串。--(白话:给用户看/可读性)
    repr()获得值的合法python表达式表示。(白话:给开发者看/明确性)
    print(repr("Hello,\nworld!")) 打印 'Hello,\nworld!'
    print(str("Hello,\nworld!")) 打印
    Hello,
    world!
    在类中,我们可以重构__str____repr__方法

  • python的指导原则之一就是:显式大于隐式
    所以一般情况下,建议使用import module 而不是from module import xx,不过这东西了解就好,如果嫌麻烦也可以直接from..

  • 在定义函数的过程中,由于存在参数是列表等可变类型的情况,如果不想影响到函数外的数据,可以使用copy,或者使用切片进行复制
def function_name(x_list):
    x_list = x_list.copy() # strategy 1
    x_list  = x_list[ : ]     #  strategy 2
# 避免覆盖输入x_list
#传入的x为列表之类的话,由于传入的是引用,所以在函数中改变会直接改变原来的值

如果要创建一份诸如序列等复杂对象副本,必须使用切片操作或者copy操作,这样才不会指向同一对象


  • 理解变量在计算机内存中的表示非常重要,例如对于variable_name = 'hello world'这一句话,python解释器干了两件事情:
    1. 在内存中创建了一个'hello word'的字符串;
    2. 在内存中创建了一个名为variable_name的变量,并把它指向’hello world’

在计算机内部,可以把任何数据都看成一个“对象”,而变量就是在程序中用来指向这些数据对象的,对变量赋值就是把数据和变量给关联起来。


如何理解python中的不可变对象的“不可变”:
对于不变对象来说,调用对象自身的任意方法,也不会改变该对象自身的内容。相反,这些方法会创建新的对象并返回,这样,就保证了不可变对象本身永远是不可变的。


  • python中的除法与整除现象:
>>> 9/3
3.0       #python3.x中不论是否整除,最后得到的均为浮点数,
          #所以有的时候在程序中得到的结果不要忘了int(result)
>>> -13//3
-5        #正负整除搞不清楚---记住余数大于0就完事了
>>> 9//2.3
3.0       #整除一个浮点数,结果也为浮点数

  • 碰见一个问题,千万不要傻乎乎的去直接敲代码(虽然自己可能根本敲不出来),正确的打开方式如下:
    分析(Analysis)----啥问题,值得去做么~❓
    设计(Design)----咋做哇😢
    实现(Implementation)----我先去瞅瞅有没有现成的库👀
    测试(Testing)----看看编的对不对🤔
    部署(Deployment)---- 大展身手去解决问题咯😁
    维护(Maintenance)----放弃吧,你个小破程序不值得维护(如果想再次去看自己写的烂代码,激励自己不断提高,请鼓起勇气多多迭代版本)😣

  • 没事多敲敲import this,说不定就顿悟了😎

~~~~~
You are my favorite hello and my hardest goodbye.
---- to an unknown person
~~~~~

相关文章

  • 十个经验点总结(1)

    命令行报错显示:SyntaxError: Non-ASCII character '\xe7' in file原因...

  • 十个经验点总结(2)

    字符串的驻留(string interning)由于 Cpython 在编译优化时, 某些情况下会尝试使用已经存在...

  • 十个经验点总结(3)

    python中的持续化存储pickle有些时候数据分析或者处理得到了一批处理后的数据,不论是列表还是其他的类型的数...

  • 4月第三周复盘 |不起眼的小事件里其实也有很大价值

    一、本周成就事件和萃取相关经验 (一)育儿上 1、高质量亲子对话 和女儿聊「优点」的话题,我总结女儿的优点:十个手...

  • 社交训练30

    今天有点晚了,总结两点: 1、情绪出口 前面总结的那一篇经验很管用(朋友提醒我的情绪出口经验),的确,在工作中或者...

  • web测试基本功能点

    二.常见功能点测试思路 根据经验,总结常见的功能点的测试思路: 1. 新增 或 创建(Add or Create)...

  • 如何通过做项目赚钱

    工作之外,尝试了几十个小项目,总结了这些经验,比较擅长流量和从0-1。目前有5个项目可以持续创造收入。分享出来看看...

  • 字符编码问题

    之前在十个经验点总结中提到了utf-8,之前也特地去了解了一些,大多是懵懵懂懂,所以这里又重新上网搜了各种资料,看...

  • 看过10家幼儿园后总结的一些选幼儿园经验

    摘自 深圳有钱兔 看过10家幼儿园后总结的一些选幼儿园经验 我实地考察了10家幼儿园后,总结的一点经验: 1、什么...

  • 总结一点经验

    1,查询某条数据是否存在,如果查询完的结果不需要再用到,可以在mapper中定义count方法,直接查询出数量,具...

网友评论

      本文标题:十个经验点总结(1)

      本文链接:https://www.haomeiwen.com/subject/atxcpqtx.html