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

[经验分享] 随学随用的python-note

[复制链接]
累计签到:6 天
连续签到:1 天
发表于 2015-11-30 11:13:05 | 显示全部楼层 |阅读模式
  Python笔记---------------[]
  
  
  列表解析
  >>> [(x,y) for x in range(3) for y in range(5)]
  [(0, 0), (0, 1), (0, 2), (0, 3), (0, 4), (1, 0), (1, 1), (1, 2), (1, 3), (1, 4), (2, 0), (2, 1), (2, 2), (2, 3), (2, 4)]
  生成器表达式(每次只加载一个元素到内存里)
  返回可迭代对象
  
  多重继承
  (新式类采用广度优先,经典类采用深度优先)
  s = (1,2,[2,3])
  i = s#前拷贝id(i) == id(s) s的改变会影响i
  i = copy.deepcopy(s)  深拷贝
  >>> d = [(x,y,z,a,v,c) for x in range(9) for y in range(9) for z in range(9) for a in range(9) for v in range(9) for c in range(9)] 暴力破解
  Isinstance(s, str)判断s这个对象是不是’str’object
  
  For i in range(10:
  If i == 2:
  Continue
  Print i
  
  Class Girl(human):
  Def __init__(self, name, old):
  Print ‘We are People’, name
  Switch = {
  ‘-’:a-b,
  ‘+’:a+b
  }
  Print Switch.get(c,’Please input +-*/’)  #用字典的get这样不报错
  
  >>> hello[:3:-1]
  'dlrow o'
  >>> hello[3:-1]
  'lo worl'
  >>> hello[4:]
  'o world'
  >>>
  
  S = 'abcdefghijk'
  for i in range(0,len(S),2):
  print S   #小技巧
  --------------------------------------------
  L1 = [1,2,3,3]
  L2 = [1, 2, 3, 4]
  返回L1中的数值这个数值必须是L2中没有的。
  Set(L1).difference(L2)     --------------------------------------------------------
  
enumerate()
利用enumerate()函数,可以在每次循环中同时得到下标和元素:
S = 'abcdefghijk'
for (index,char) in enumerate(S):    print index    print char
实际上,enumerate()在每次循环中,返回的是一个包含两个元素的定值表(tuple),两个元素分别赋予index和char。
  with open(file) as myfile:
  Print myfile.read() #不用再关闭myfile
  ------------------------------------------------
  class num(object):
  def __init__(self, value):
  self.value = value
  def getNeg(self):
  return -self.value
  def setNeg(self, value):
  self.value = -value
  def delNeg(self):
  print("value also deleted")
  del self.value
  neg = property(getNeg, setNeg, delNeg, "I'm negative")
  
  x = num(1.1)
  print(x.neg) x.neg = -22
  print(x.value)
  print(num.neg.__doc__)
  del x.neg
  装饰器可以对一个函数、方法或者类进行加工。
  def decorator(F):
  def new_F(a, b):
  print("input", a, b)
  return F(a, b)
  return new_F
  # get square sum
  @decorator
  def square_sum(a, b):
  return a**2 + b**2  #square_sum = decorator(square_sum)
  Def func(formal_args, i = 0, *args, **kwargs):
  print formal_args
  print i
  print args
  print kwargs
  以上是不带参数的装饰器
  def Func1(F):
  def new_fun():
  print('func1')
  F()
  return new_fun
  
  def Func21(F):
  def new_fun2():
  print('func2')
  F()
  return new_fun2
  @Func1
  @Func21
  def Func4():
  pass
  
  print(0b1110) # 二进制,以0b开头
  print(0o10) # 八进制,以0o开头
  print(0x2A) # 十六进制,以0x开头
  环境配置$export PYTHONPATH=$PYTHONPATH:/home/vamei/mylib
  
安装非标准包
Python的标准库随着Python一起安装。当我们需要非标准包时,就要先安装。
(1)、使用Linux repository (Linux环境)
这是安装Python附加包的一个好的起点。你可以在Linux repository中查找可能存在的Python包 (比如在Ubuntu Software Center中搜索matplot)。
(2)、使用pip。pip是Python自带的包管理程序,它连接Python repository,并查找其中可能存在的包。
比如使用如下方法来安装、卸载或者升级web.py:
$pip install -i http://mirrors.aliyuncs.com/pypi/simple web.py$pip uninstall web.py$pip install -i http://mirrors.aliyuncs.com/pypi/simple --upgrade web.py
如果你的Python安装在一个非标准的路径(使用$which python来确认python可执行文件的路径)中,比如/home/vamei/util/python/bin中,你可以使用下面方法设置pip的安装包的路径:
$pip install -i http://mirrors.aliyuncs.com/pypi/simple --install-option="--prefix=/home/vamei/util/" web.py

str1 = ['21+23=', '32/8=', '32*12=']                                                     
e=[]
for s in str1:
    s2 = s + str(eval(s[:-1]))
    e.append(s2)
print(e)

运维网声明 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-145309-1-1.html 上篇帖子: Spark SQL inferSchema实现原理探微(Python) 下篇帖子: ubuntu python
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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