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

[经验分享] Python 常识

[复制链接]

尚未签到

发表于 2017-4-21 08:52:39 | 显示全部楼层 |阅读模式
  转载http://blog.whiledo.com/archives/400
  Python 使用行缩进
代替传统的 {...} 和 Begin ... End

对大小写敏感

行尾使用
作为块开始,个人习惯以一个空行做为块结束

支持非ASCII字符,在页首加与
#-*- coding:utf-8 -*-


Python所有元素基本上全是对象

help(对象) 显示对象帮助

字符串,单或双引号是完全一样的,使用重复三个引号表示多行字符'''

使用 \
转义字符

自然字符串在前面加 r|R
如 r"I want to see \n",常在正则表达式下使用

Unicode字符串,前面加 u|U
如 u"中国字"

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

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

使用变量时只需要给它们赋一个值。不需要声明或定义数据类型。

一物理行多逻辑行在行尾使用 ;
一逻辑行多物理行在行尾使用 \
另外像[] ,()中的内容自动支持多物理行

运算符:+,-,*,** 返回x的y次幂,/,// 返回商的整数部分,%,<<,>>,&,|,^,~,<,>,<=,>=,==,!=,and,or,not

可使用 a = b = c

控制流:if,for,while 注意没有 switch
,可使用字典

if

while

for

自定义函数
  函数通过def
关键字定义
  要使用global
语句访问函数外的变量

使用关键参数
(假设其他参数都有默认值,我们可以只给我们想要的那些参数赋值)









  return
xx #返回值,并跳出函数









  DocStrings 文档字符串,一般用来描述对象或函数功能,是个很实用的功能

可在Python发行版附带的pydoc命令,与help()类似地使用DocStrings

惯例是一个多行字符串,它的首行以大写字母开始,句号结尾。第二行是空行,从第三行开始是详细的描述。









模块
  使用sys模块









  字节编译的.pyc文件


pyc是一种二进制文件,是由py文件经过编译后,生成的文件.
compile函数原型:
compile(file[, cfile[, dfile[, doraise]]])
file 表示需要编译的py文件的路径
cfile 表示编译后的pyc文件名称和路径,默认为直接在file文件名后加c 或者 o,o表示优化的字节码
dfile 错误日志保存的路径
doraise 可以是两个值,True或者False,如果为True,则会引发一个PyCompileError,否则如果编译文件出错,则会有一个错误,默认显示在sys.stderr中,而不会引发异常


  批量生成pyc文件


compile_dir(dir[, maxlevels[, ddir[, force[, rx[, quiet]]]]])
dir 表示需要编译的文件夹位置
maxlevels 表示需要递归编译的子目录的层数,默认是10层,即默认会把10层子目录中的py文件编译为pyc
ddir 错误日志保存的路径
force 如果为True,则会强制编译为pyc,即使现在的pyc文件是最新的,还会强制编译一次,pyc文件中包含有时间戳,python编译器会根据时间来决定,是否需要重新生成一次pyc文件
rx 表示一个正则表达式,比如可以排除掉不想要的目录,或者只有符合条件的目录才进行编译
quiet 如果为True,则编译后,不会在标准输出中,打印出信息


  from..import
语句直接输入argv变量到程序中(避免在每次使用它时打sys.)

from sys import argv

输入所有sys模块使用的名字

from sys import *

输入mod_python中apacche

from mod_python import apache

一般说来,应该避免使用from..import而使用import语句
模块的__name__
每个模块都有一个名称,在模块中可以通过语句来找出模块的名称。这在一个场合特别有用——就如前面所提到的,当一个模块被第一次输入的时候,这个模块的主
块将被运行。假如我们只想在程序本身被使用的时候运行主块,而在它被别的模块输入的时候不运行主块,我们该怎么做呢?这可以通过模块的__name__属
性完成。


  dir()函数
:列出模块定义的标识符。标识符有函数、类和变量。为dir()提供一个模块名的时候,它返回模块定义的名称列表。如果不提供参数,它返回当前模块中定义的名称列表。
del()
语句删除当前模块中运行时的变量/属性


数据结构


  • 列表
  • 元组
  • 字典
  • 序列
  • 参考
  列表
(列表不同于元组它是一种可变数据类型的结构)


  元组
(元组通过圆括号中用逗号分割的项目定义。元组通常用在使语句或用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变。 )


  含有0个或1个项目的元组。 myempty = () 与 myone = (9,)

元组最通常的用法是用在打印语句中,下面是一个例子


  字典


键值对在字典中以这样的方式标记:d = {key1 : value1, key2 : value2 }。 这点像 json,偶喜欢



  • dic.clear():请空字典
  • dic.copy():复制字典
  • dic.get(key):获取key所代表的值,相当于dic[key]
  • dic.has_key(key):判断是否包含key
  • dic.items():获取由键和值组成的列表,列表的每一个元素对应于字典的每一个数据元素,列表中每一个元素的数据类型是元组类型,元组中有两个元素,一个是键,一个是值。
  • dic.keys():获取键的列表
  • dic.pop(key):返回key代表的值,并删除key代表的数据元素
  • dic.update(key,value):更新key的value,如果不存在key,则在字典中计入key和value,相当于 dic[key]=value
  • dic.values():获取值的列表
  • key in dic: in操作用于判断key是否存在于dic 反之是 not in
  • del dic[key]:删除key所代表的数据元素
  关键字参数与字典。如果换一个角度看待你在函数中使用的关键字参数的话,你已经使用了字典了!只需想一下——你在函数定义的参数列表中使用的键/值对。当你在函数中使用变量的时候,它只不过是使用一个字典的键(这在编译器设计的术语中被称作 符号表 )。
序列


列表、元组和字符串都是序列,但是序列是什么,它们为什么如此特别呢?序列的两个主要特点是索引操作符和切片操作符。索引操作符让我们可以从序列中抓取一个特定项目。切片操作符让我们能够获取序列的一个切片,即一部分序列。
  参考
(类似指针)



运维网声明 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-367137-1-1.html 上篇帖子: Python-函数 下篇帖子: Python_List
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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