设为首页 收藏本站
查看: 600|回复: 0

[经验分享] Python笔记之不可不知

[复制链接]

尚未签到

发表于 2015-11-29 10:13:18 | 显示全部楼层 |阅读模式
  Python软件已经安装成功有很长一段时间了,也即或多或少的了解Python似乎也很长时间了,也是偏于各种借口,才在现在开始写点总结。起初接触Python是因为公司项目中需要利用Python来测试开发的接口,于是开始了解这门解释性,面向对象,带有动态语义的高级语言,或是脚本语言,或是胶水语言。便在网上找了一个现成的Python爬虫,在本地测试运行成功,将新浪上面的所有博客地址扒取下来。真心想从基础学起,自己写个,于是,有了这份基础总结,项目模块的开发将在下一篇博文中贴出。敬请关注!
  本博文仅记录自己学习Python过程中的点滴,与诸位喜欢Python的菜鸟朋友分享。本博文版权归作者和博客园所有,欢迎转载,但请保留本博文的出处。作者:itRed  联系邮箱:it_red@sina.com   博客链接:http://www.cnblogs.com/itred  GitHub链接: https://github.com/itRed
  
  一.Python产生
  1989年圣诞节,阿姆斯特丹,Guido van Rossum 开发而成。
  二.Python的特征


  • 语言简单;
  • 解释性和编译性;
  • 面向对象编程;
  • 高级语言(无需考虑如内存管理一类的底层知识);
  • 可扩展性和可嵌入性(很好的和C,C++,JAVA等);
  • 免费开源;
  • 可移植性;
  • 丰富的库。
  三.Python的文件类型


  • 源代码:以'py'为扩展名的文件,该文件由Python程序进行解释,不需要编译;
  • 字节代码:Python源代码经过编译后生成扩展名为’pyc’的文件;
  编译方法:



      >>>import py_compile
     >>>py_compile.compile(文件名.py)
  
  3. 优化代码:经过优化后的源文件,扩展名为’.pyo
  编译方法:



      >>>python –o –m py_compile 文件名.py
  
  四.Python重点笔记
  正是因为python比较简单,所以很多关于很多语言都比较常见的语法在这里就不再赘述了。只是介绍一些比较有特点的基础知识。


  • 查看变量的内存位置:



    >>>a=2
    >>>id(a)
  
  2. 求幂运算符(**):



    >>>2**3
    8
  
  3. 整数除法(//):



    >>>3.0//2
    1.0
  
  4. 复数表示法(Complex):



    >>>c=3.14j
  
  5. 序列:主要包含字符串,列表,元组等。


  • 元组(“()”)
  (1)     元组案例



    >>>t=(‘red’,20,’male’)
    >>>t[0]
    'red'
    >>>t[1]    20
    >>>t[2]
    'male'
    >>>t
    ('red', 20, 'male')
  
  (2)     空元组:newtest=()
  (3)     单元素元组:newtest2=(2,)  *必须要加逗号
  2. 列表(”[]”)
  (1)     序列是处理一组有序项目的数据结构,即可以在一个列表中存储一个序列的项目。可以对元素进行赋值操作。
  (2)     列表的组成包含了多个以逗号分隔开的数字或字符串。
  (3)     案例:



      >>>list1=['red',’test’,’张三’]
      >>>list2=[1,2,3,4,5]
      >>>list3=['str1',’str2’,’str3’]
      >>>listred=[‘red’,20,’male’]
      >>>listred[0:3]
      ['red',20,’male’]
  
  (4)     空序列:



        >>>list=[]
  
  (5)     列表的基本操作:
  取值:切片和索引,list[]
  添加:list.append()
  删除:del(list[])
  List.remove(list[])
  修改:list[]=x
  查找:var in list
  1. Python控制流程
  就Python的语法而言,基本具有一般语言通用的。判断语句,for循环语句,switch语句等等。都是十分基础的。用几个简单的案例来说明Python这样简单的语言效果会更好。



                   >>>for x in 'hello':
……    print x
h
      e
      l
      l
      o
      >>>st='hello'
      >>>for x in range(len(st)):
      ……    print st[x]     
        (输出结果同上)
  
  2. if语句:



              >>> x=0
     >>> if x==0:
     ...     print '0'
     ... else:
     ...     print '1'
     ...
     0
  
  3. 索引(迭代序列指数):遍历每个项目的另一种方法是由序列本身的偏移指数(索引)。迭代就是重复执行一个命令。



      >>>fruits=['banana',’apple’,’orange’]
      >>>for index in range(len(fruits)):
      …    print 'fruit:',fruits[index]
      …    print ‘finish’
  
  4. 字典的遍历:



      >>> d = {1:111,2:222,3:333}
      >>> for k,v in d.items():
      ...     print k,v
      ...
      1 111
      2 222
      3 333
      >>>
  
  5. 函数
  函数就是为了完成特定功能的一个语句组,这组语句可以作为一个单位使用,并且给它起一个名字。
  可以通过函数名在程序的不同地方多次执行,这通常就是函数的调用,可以不用在所有的地方重复性地编写这些语句。
  函数分为自定义函数和预定义Python函数,自定义函数是用户自己编写的函数,预定义函数是指系统自带的函数,还有一些第三方编写的函数,如其他程序员编写的一些函数,对于这些现成的函数,用户可以直接拿来使用。



  def 函数名(参数列表):  #可以没有参数列表
     函数体
  
  案例:



  >>> def f(x):
  ...  print x
  ...
  >>> f(10)
  10
  >>> f('hello')
  hello
  >>> f([1,2,3,4])
  [1, 2, 3, 4]
  >>>
  >>> def f(x,y):
  ...   print x,y
  ...
  >>> f(1,2)
  1 2
  >>> f('a','b')
  a b
  >>>
  >>> t=['name','red']
  >>> def f(x,y):
  ...   print "%s:%s" % (x,y)
  ...
  >>> f(*t)
  name:red
  >>>
  >>> def f(name='name',age=0):
  ...   print "name:%s" % name
  ...   print "age:%s" % age
  ...
  >>> f()
  name:name
  age:0
  >>> t=(30,'red')
  >>> f(*t)
  name:30
  age:red
  >>> d={'name':'red','age':20}
  >>> f(age=20,name='red')
  name:red
  age:20
  >>> f(**d)
  name:red
  age:20
  >>>
  
  
  五.  总结  
  本片博文仅仅是Python基础的一部分,本人认为是重点中的重点,作为菜鸟级的Python爱好者,基础往往是走向大神的门槛。只有将基础烂熟于心,方可写出高效而且简洁的代码。对于使用这些基础的知识开发Python的简单模块将在下一篇博客中详细介绍,谨以此文献给奋斗中的自己!
  
  



  邮箱:it_red@sina.com
个人博客: http://itred.cnblogs.com
版权声明:本文版权归作者和博客园共有,欢迎转载,但请在文章显眼位置标明文章出处。未经本人书面同意,将其作为他用,本人保留追究责任的所有权利。
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-144824-1-1.html 上篇帖子: python selenium expected 下篇帖子: 【译】使用 Python 编写虚拟机解释器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表