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

[经验分享] 简明python教程的读书笔记

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2018-8-16 09:14:49 | 显示全部楼层 |阅读模式
  python编程是一件愉快的事情!!!
  一、python的特点:
  它注重的是如何解决问题而不是编程语言的语法和结构。
  当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类
  的底层细节。
  可移植性
  支持面向对象和面向过程的编程
  可嵌入性:可以在python代码中嵌入c或者c++
  丰富的库
  二、python代码执行的过程:
  源代码.py-> 字节码.pyc ->字节码在PVM(Python虚拟机)中执行

  二、python>  http://www.pydev.org/
  三、python的相关基本概念:

  • 解释性语言:源代码不是直接翻译成机器语言,而是先翻译成中间代码,再由解释器对中间代码进行解释运行。   
  • 编译型语言:在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。


  • 数: python中有4种类型的数:整数、长整数、浮点数、复数   
  • 字符串:一般用单引号、双引号、三引号   
  • 反斜杠   
  • 自然字符串:自然字符串通过给字符串加上前缀r或R来指定。例如r"Newlines are indicated
  by \n"。

  • unicode字符串:—你只需要在字符串前加上前缀u或U,
  记住,在你处理文本文件的时候使用Unicode字符串,特别是当你知道这个文件含有用
  非英语的语言写的文本。

  • 如果你把两个字符串按字面意义相邻放着,他们会被Python自动级连。例如,'What\'s'
  'your name?'会被自动转为"What's your name?"。

  • 在Python中没有专门的char数据类型。


  • 记住,单引号和双引号字符串是完全相同的。   
  • 一定要用自然字符串处理正则表达式。否则会需要使用很多的反斜杠。例如,后向引用符可以
  写成'\\1'或r'\1'。
  什么是后向引用backreference:\n斜杠加数字表示前面括号的内容。例如:\b(\d+)\b\s+\1\b这样这个会匹配如:123 123重复的数字串
  元字符
  名称
  匹配对象
  .
  点号(dot)
  单个任意字符
  \n
  换行(newline)
  换行
  \r
  回车(return)
  回车
  \t
  制表符(Tab)
  制表符
  [...]

  字符组(Character>  列出的任意字符
  [^...]

  排除型字符组(Negated Character>  未列出的任意字符
  \d
  数字(digit)
  数字
  \D
  非数字
  \w
  单词(word)
  单词字符(字母或者数字)
  \W
  非单词字符
  \s
  空白字符(whitespace)
  空白字符
  \S
  非空白字符
  ^
  脱字符(caret)
  行的起始位置
  $
  美元符(dollar)
  行的结束位置
  \<
  单词的起始位置
  \>
  单词的结束位置
  \b
  边界(Boundary)
  单词边界
  \B
  非单词边界
  (?=...)
  肯定顺序环视(Positive Lookahead)
  成功如果右边能够匹配
  (?!...)
  否定顺序环视(Negative Lookahead)
  成功如果右边不能够匹配
  (?>> import name
  >>> dir(name)
  ['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'say', 'version']
  注意,如果dir()参数为空:
  >>> import name
  >>> dir(name)
  ['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'say', 'version']
  >>> dir()
  ['__builtins__', '__doc__', '__name__', '__package__', 'name']
  #这里import模块名称是列表的一部分
  八、 python标准库:
  一组模块组成了标准库。
  九、python异常
  十、python数据结构
  三种内建的数据结构:数组、字典、元组

  • 列表:每个项目之间用逗号隔开。列表中的项目应该包括在方括号[]。
  列表是 可变的 数据类型。
  例子:手动的给列表添加item和删除:
  #!/usr/bin/env python
  def buy():
  mylist=['potato','chilli','banana','apple']
  print 'i have',len(mylist),'to buy\n'
  print 'the items are:'
  for i in mylist:
  print I,
  flag=True
  while flag:
  judge=raw_input('you can input yes or no:')
  if judge=='yes':
  goods=raw_input('maybe you need to buy more goods:')
  mylist.append(goods)
  else:
  flag=False
  for i in mylist:
  print I,
  print 'my shop list is now:',mylist
  mylist.sort()
  print 'the sorted shop list are',mylist
  flag2=True
  while flag2:
  judge2=raw_input('if you want to delte?yes or no:')
  if judge2=='yes':
  print 'which itme you want to delte ',mylist
  print 'you can choose the item from 0 to',len(mylist)-1
  a=int(raw_input('the item is:'))
  del mylist[a]
  else:
  flag2=False
  print 'the remained shop list are:',mylist
  buy()
  在print语句的结尾使用了一个 逗号 来消除每个print语句自动打印的换行符。

  • 元组:
  元组和字符串一样是 不可变的 即你不能修改元组。元组通过圆括号中用逗号分割的项目定义。
  一个空的元组由一对空的圆括号组成,如myempty = ()。
  你必须在第一个(唯一一个)项目后跟一个逗号,这样Python才能区分元组和表达式中一个带圆括号的对象。
  元组最通常的用法是用在打印语句中。
  元组的使用举例:
  !/usr/lib/env python
  def zoo():
  zoo=('lion','tiger','rabbit','dragon','snake')
  print 'the number of the zoo is',len(zoo)
  for i in range(len(zoo)):
  print zoo,
  zoo_new=('dog','monkey',zoo)
  print 'the animal number is ',len(zoo_new)
  print 'the sencond animal is',zoo_new[1]
  print 'the animals brought from old zoo are:',zoo_new[2]
  print 'all animals:',zoo_new
  a=(123)
  print a
  a=(123,)
  print a
  zoo()
  输入结果:
  the number of the zoo is 5
  lion tiger rabbit dragon snake the animal number is 3
  the sencond animal is monkey
  the animals brought from old zoo are: ('lion', 'tiger', 'rabbit', 'dragon', 'snake')
  all animals: ('dog', 'monkey', ('lion', 'tiger', 'rabbit', 'dragon', 'snake'))
  123
  (123,)
  例子2:
  元组用于打印中:
  #!/usr/bin/python
  # Filename: print_tuple.py
  age = 22
  name = 'Swaroop'
  print '%s is %d years old' % (name, age)
  print 'Why is %s playing with that python?' % name

  • 字典:
  字典类似于你通过联系人名字查找地址和联系人详细情况的地址簿,即,我们把键(名字和值(详细情况)联系在一起。注意,键必须是唯一的。
  十一、python函数

  • 函数定义:函数是可以重用的程序块。


  • 调用 函数:在你的程序的任何地方使用这个名称任意多次地运行这个语句块。
  举例:
  #!/usr/bin/python
  # Filename: function1.py
  def sayHello():
  print 'Hello World!' # block belonging to the function
  sayHello() # call the function

  • 函数的形参和实参:
  参数在函数定义的圆括号对内指定,用逗号分割。

  • 局部变量:函数定义内声明变量。   
  • 使用global语句:可以使用同一个global语句指定多个全局变量。例如global x, y, z .
  #!/usr/bin/python
  # Filename: func_global.py
  def func():
  global x
  print 'x is', x
  x = 2
  print 'Changed local x to', x
  x = 50
  func()
  print 'Value of x is', x

  • 默认参数:在函数定义的形参名后加上赋值运算符(=)和默认值,从而给形参指定默认参数值。只有在形参表末尾的那些参数可以有默认参数值。
  #!/usr/bin/python
  # Filename: func_default.py
  def say(message, times = 1):
  print message * times
  say('Hello')
  say('World', 5)

  • 关键参数:通过命名来为这些参数赋值。   
  • return语句:
  #!/usr/bin/python
  # Filename: func_return.py
  def maximum(x, y):
  if x > y:
  return x
  else:
  return y
  print maximum(2, 3)

  • docstrings文档字符串:DocStrings是一个重要的工具,由于它帮助你的程序文档更加简单易懂。
  #!/usr/bin/python
  # Filename: func_doc.py
  def printMax(x, y):
  '''Prints the maximum of two numbers.
  The two values must be integers.'''
  x = int(x) # convert to integers, if possible
  y = int(y)
  if x > y:
  print x, 'is maximum'
  else:
  print y, 'is maximum'
  printMax(3, 5)
  print printMax.__doc__
  函数的第一个逻辑行的字符串是这个函数的 文档字符串
  文档字符串的惯例是一个多行字符串,它的首行以大写字母开始,句号结尾。第二行是空行,
  从第三行开始是详细的描述。
  。请记住Python把 每一样东西 都作为对象,包括这个函数。这句话非常重要,通过上面的实例的自后一行代码可以提现。
  十二、python变量
  十三、python运算符与表达式:
DSC0000.png

  +加号可以做算术运算,也可以连接2个字符串。
  **幂
DSC0001.png

DSC0002.png


  • 运算符优先级:
  我建议你使用圆括号来分组运算符和操作数,以便能够明确地指出运算的先后顺序。
DSC0003.png

DSC0004.png



运维网声明 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-552472-1-1.html 上篇帖子: Python 学习笔记 - Paramiko 模块 下篇帖子: 简明python教程的读书笔记(一)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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