qqruser 发表于 2017-4-22 10:09:57

python学习1

记得在大二为了学习django学了一会python,由于当时没什么耐心学python只用了很少时间,当时也感觉比较难,然后硬着头看django,可能真的由于python没学好,导致django学习失败。也有可能是当时学习能力的限制吧,不过今天经历了多种语言的洗礼后,有学了一下,感觉还好。不过此次学python,是为了学习网络编程。以下是看了一篇速成文章后的笔记
1. Help(对象),dir(对象)
2. If和else要后面加冒号
3. python 有两种针对不定参数个数的独门武功
3.1.def foo (*params):
  if len(params) ==0:
  print 'noparameter' # 如果调用方式为 foo() 则进入这里
  else
  print params # 如果调用方式为 foo(1, 2, 3, 4),则这里输出为 (1, 2, 3, 4),params 是一个 tuple
3.2.def bar (**params):
  if len(params) ==0:
  print 'noparameter' # bar()
  else
  print params #bar(name='ddh', age=32),则这里输出为 {'name' : 'ddh', 'age' : 32},params 是一个 dict。

4. 变量和引用
4.1.Python 所有的变量(不仅仅是传参)都是基于对象引用的
4.2.python 的对象分为两种,一种叫 immutable(对象没有方法改变自己,比如str),还有一种叫 mutable(有方法改变自己,比如list)
4.3.例子:
  def foo (s):
  s = '456'
  name = '123'
  foo(name)
  name
  输出结果:’123’
  name刚开始是一个内容为123的str对象的引用,不妨设这个str对象为hehe,然后调用foo(name),s就成为了对hehe这个str对象的引用,接下来,执行s ='456',s就成为了内容为’456’这个str对象的引用,不再是对hehe的引用。而name还是对hehe的引用。
4.4.疑问,那如果想改变实参的值,怎么办,有待将来探讨。知道了,就是利用immutable对象的特点啊。总之记得python里面,变量就当引用处理(暂时是这么认为),我们无从触摸到对象的本体,只能对对象的引用做处理,通过这个引用来调用该对象的方法改变该对象(只能是immutable)
5. 处理异常:TRY...EXCEPT
6. 类
6.1.成员函数访问成员变量必须把self(比c++的this弱一点)作为参数
6.2.没有self的成员函数类似c++的静态成员函数
6.3.继承
页: [1]
查看完整版本: python学习1