python编程基础(四):编程习惯、代码规范、易混淆之处

目录

编程习惯

代码规范

python中self的作用

易混淆之处


编程习惯

1. 添加主函数if __name__ == 'main':

2. 使用project_path = os.getcwd()自动获取文件路径,将代码和数据文件夹放在一个project下,可以更轻松的获取文件路径,不必担心代码移植出现的文件路径问题。

3. 设置pycharm 编程模版

4. 可以将自定义的python函数封装成一个类class Solution(object),通过创建对象o = class_name(),对象调用类内创建的函数获得运行结果o.longestPalindrome(s)

5. 轻量级循环

# 列表推导式
[x*x for x in range(10) if x % 3 ==0]
[(x,y) for x in range(3) for y in range(3)]
[b+'+'+g for b in boys for g in girls if b[0] == g[0]]

 6. 字符串匹配,返回True or False

re.match(pattern,x)  # 正确返回True,错误返回False

7. python利用正则表达式提取指定字符串内容 

 方法:re.findall,re.finditer

import re

result = re.findall(r'(\w+)=(\d+)', 'set width=20 and height=10')
print(result)
[('width', '20'), ('height', '10')]

代码规范

python中self的作用

参考:python——类中的self到底有什么作用

  • 在python的类中self代表实例本身,具体来说,是该实例的内存地址。

需要注意的是,self不是关键字,换言之,可以用其它的合法变量名替换self,但是,规范和标准建议我们一致使用self。

  • 和普通的函数相比,在类中定义的函数只有一点不同,就是第一个参数永远是实例变量self,并且,调用时,不用传递该参数。除此之外,类的方法和普通函数没有什么区别,所以,你仍然可以用默认参数、可变参数、关键字参数和命名关键字参数”(廖雪峰老师说的)。
  • 实例变量有什么作用,或者说,什么时候应该使用self修饰变量比较好?我的总结如下:

当我们想将某个变量绑定给实例时,就在类中,使用self修饰该变量。一般来说,类实例化为不同实例后,为了不同实例的某一变量互不干扰,就将该变量绑定给实例。

具体的使用场景,
1)若需要在类的不同方法中调用同一变量,且属于同一个类的不同实例的该变量互不影响(即排除类属性),则在类中将该变量绑定给实例。
2)需要在类实例化得到实例后,修改、或引用实例的某变量,则在类中将该变量绑定给实例。

易混淆之处

1. list[a:b]分片取子列表和range(10)都取不到最后一个数的索引值

  比如,list[3:6]取不到6这个索引值;range(10)取不到10这个索引值

  --> python2 range()返回的是列表;python3 range()返回的是一个可迭代的对象。

==?为什么编程语言不能从1开始呢,为什么不能从头取到尾呢?

2. 换行符--'\n',TAB制表符--'\t',是用转义字符'\'(斜杠)而不是'/'。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天狼啸月1990

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值