Python2.7

缩进统一;

约定  常量 大写 , 变量  小写

判断一个变量在内存中的地址,也能看出是不是一个值 id()函数

  1. >>> x = 'abc'
  2. >>> y = x
  3. >>> x = 'def'
  4. >>>
  5. >>> id(x)
  6. 21306656
  7. >>> id(y)
  8. 6214752l

良好的编程风格,我们在命名多个单词的变量时 可以是 task_detail  taskDetail  TaskDetail 都行,但要保持一致.

True  False

type()函数,判断数据的类型

  1. >>> type('abc')
  2. <class 'str'>
  3. >>> type(123)
  4. <class 'int'>

用户交互   input()  raw_input()

row_input() ,无论输入什么都当字符串处理;

input(), 自动转成输入值的类型,原生格式是什么类型就当什么类型处理,如果是变量就在程序中找这个变量

  1. #!/usr/bin/env python
  2. #_*_ coding:utf-8 _*_
  3.  
  4. # 下面代码在Python2.7和Python3.5中都没有运行起来
  5. # 其中Python3.5是不支持 raw_input
  6. # 其中Python2.7是不打印结果
  7.  
  8. name = raw_input("Please input your name:")
  9. age = input("age:") # 这里使用 input,为了看不同的效果
  10. job = raw_input("job:")
  11.  
  12. # 采用格式化形式输出 '''除了作多行注释,还有格式化输出的功能
  13. # %s表示字符串 %d表示整数 %f 表示浮点数
  14.  
  15. print '''
  16. Information of %s is:
  17. Name: %s
  18. Age : %s
  19. Job : %s
  20.  
  21. ''' % (name,name,age,job)

在Python中存在 while else、 for  else的语法

  1. count = 0
  2.  
  3. while count<10000000:
  4. count +=1
  5. else:
  6. print('loop',count)

IO 文件操作

strip()去掉字符串中的指定的前后字符 ,不指定就会去掉前后空白 

  1. # python2.7的语法使用 file()
  2. #python 3.5语法是使用 open()
  3.  
  4. # r以只读方式打开文件、w以只写方式打开文件、a以追加方式打开文件
  5.  
  6. f1 = file('path','r')
  7. f2 = file('path','w')
  8. f3 = file('path','a')
  9.  
  10. # 读一行
  11. f1.readline()
  12. #循环按行读
  13. for line in f1.readlines():
  14. line = line.strip('\n').split[':'] #去掉换行符,再使用冒号分割
  15. print line
  16.  
  17. # 写文件
  18. f2.write("new line") #write()不会立刻写到硬盘而是在缓冲区中,可以使用flush()强制写入
  19. f2.flush()
  20.  
  21. #追加方式写入文件,也是直接使用 write()函数写入
  22.  
  23. #关闭文件
  24. f1.close()
  25. f2.close()f3.close()
  26.  
  27. ------------------------------------------------------------------------------readline()是通过next()实现的,next读到最后会报 StopIteratorErrorreadlines()是读到列表中read()是一次性读出来,结果是字符串形式
  28.  
  29. seek(0) 跳到文件开头tell() 当前的文件指针位置
  30.  
  31. 更多可以参考之前我学习的 小甲鱼笔记 http://www.cnblogs.com/yangw/p/4964729.html
  32.  
  33. 以二进制方式读 我们可以使用 file('path','rb')
  34.  
  35. seek() tell()的使用场景 【在分析特别大的日志文件时,每隔10分钟分析一次,只需要分析新增加的内容 用这个就特别方便】

__init__.py 至关重要,区分文件夹和包的标志

__name__  判断是否为主文件  if __name__=='__main__'

__file__  ,当前文件的路径

__doc__ 当前文件的描述

函数参数的可变性 当传递的参数用一个 * 标识时,会封装成列表进行处理,当传递的参数用两个*标识时,会封装成字典的形式进行处理

with打开文件

一旦一个函数中有 yield,它就是生成器 , yield相当于return,函数遇到yield就会返回yield后面的值,函数处于暂停状态;

生成器要想继续执行,必须使用迭代.

应用场景 写多线程时可以作为线程池

三元运算  result= 'a' if x>y else 'b'

匿名函数 lambda , 只能调用一次

一些常用的内置函数

help()

dir()  以列表的形式列出当前模块中的各个对象

vars()以字典的形式列出当前模块中的各个对象

type()

id()

-----------------------------------------------

cmp(a,b) 比较

abs(-9)  绝对值

bool()  返回bool值

divmod(9,4) 返回商和余数  #(2,1)

-----------------------------------------------

max()   #print(max([11,45,23,76,1]))

min()

sum()

pow(2,10) # 1024

-----------------------------------------------

len() #print(len('中国'))   6

all() #所有的是真才是真 all([1,4,6,0])   False

any() #有一个为真就是真  any([0,0,0,1]) True

-----------------------------------------------

print(chr(65)) # A
print(ord('a')) #97
print(hex(2)) #0x2
print(bin(2)) #0b10
print(oct(2)) #02

-----------------------------------------------

s = "I'm {0},go shopping,{1}"
print(s.format('yangw','today'))   # I'm yangw,go shopping,today

enumerate()函数

map() ,原来列表中有几个值还是返回几个值

filter(), 只返回函数返回真的值

reduce(),可以用来累计求和求积

zip()

 eval()

反射: 通过字符串的形式导入模块,并以字符串的形式执行函数

__import__(str)

***反射详解二:***

随机数模块 random

random 随机数生成的模块

下面是生成验证码的例子

Md5的生成方式

序列化: 应用在Python与Python之间文件传输时.实现了两个Python程序之间内存数据的交换

pickle方式的序列化,它是Python独有的,除了常规数据类型能序列化,其它的类,对象也能被序列化

pickle 序列化到文件中

JSON序列化: 只能序列化常规类型,其它语言也是支持json格式数据的

json序列化的用法与pickle完全一样,方法名都是一样,不过就是 import json

正则表达式 re

time()模块

时间的三种表达形式  时间戳形式 time.time() 以元组形式显示 time.gmtime() 以格式化字符串形式显示 time. strftime()

http://www.runoob.com/python/python-date-time.html

时间格式之间可以转化,其中 元组形式的是桥梁

Python-老男孩-01_基础_文件IO_函数_yield_三元_常用内置函数_反射_random_md5_序列化_正则表达式_time的更多相关文章

  1. python中的运算符及表达式及常用内置函数

    知识内容: 1.运算符与表达式 2.for\while初步了解 3.常用内置函数 一.运算符与表达式 python与其他语言一样支持大多数算数运算符.关系运算符.逻辑运算符以及位运算符,并且有和大多数 ...

  2. Python 基础之常用内置函数

    1.常用内置函数 (1)abs 绝对值函数 intvar = -9 res = abs(intvar)print(res) (2)round 四舍五入 (n.5 n为偶数则舍去 n.5 n为奇数 ,则 ...

  3. Python基础(二)——常用内置函数

    1. 常用内置函数 (1)isinstance(object, classinfo) 用于判断一个对象是否为某一类型. object  是实例对象 classinfo 是基本类型如 int, floa ...

  4. Python的常用内置函数介绍

    Python的常用内置函数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.取绝对值(abs) #!/usr/bin/env python #_*_coding:utf-8_ ...

  5. Python函数04/生成器/推导式/内置函数

    Python函数04/生成器/推导式/内置函数 目录 Python函数04/生成器/推导式/内置函数 内容大纲 1.生成器 2.推导式 3.内置函数(一) 4.今日总结 5.今日练习 内容大纲 1.生 ...

  6. python中常用内置函数和关键词

    Python 常用内置函数如下: Python 解释器内置了很多函数和类型,您可以在任何时候使用它们.以下按字母表顺序列出它们. 1. abs()函数 返回数字的绝对值. print( abs(-45 ...

  7. Python常用模块中常用内置函数的具体介绍

    Python作为计算机语言中常用的语言,它具有十分强大的功能,但是你知道Python常用模块I的内置模块中常用内置函数都包括哪些具体的函数吗?以下的文章就是对Python常用模块I的内置模块的常用内置 ...

  8. PYTHON语言之常用内置函数

    一 写在开头本文列举了一些常用的python内置函数.完整详细的python内置函数列表请参见python文档的Built-in Functions章节. 二 python常用内置函数请注意,有关内置 ...

  9. 学习Python函数笔记之二(内置函数)

    ---恢复内容开始--- 1.内置函数:取绝对值函数abs() 2.内置函数:取最大值max(),取最小值min() 3.内置函数:len()是获取序列的长度 4.内置函数:divmod(x,y),返 ...

  10. python之迭代器 生成器 枚举 常用内置函数 递归

    迭代器 迭代器对象:有__next__()方法的对象是迭代器对象,迭代器对象依赖__next__()方法进行依次取值 with open('text.txt','rb',) as f: res = f ...

随机推荐

  1. decimal扩展方法(转换为字符串,去掉末尾的0)

    /// <summary> /// 转换为字符串,去掉末尾0 /// </summary> /// <param name="target">被 ...

  2. JavaWeb(六)Listener监听器

    监听器 监听器就是一个实现特定接口的普通java程序,这个程序专门用于监听另一个java对象的方法调用或属性改变,当被监听对象发生上述事件后,监听器某个方法将立即被执行. Servlet监听器 在Se ...

  3. SpringMVC详解(五)------参数绑定

    参数绑定,简单来说就是客户端发送请求,而请求中包含一些数据,那么这些数据怎么到达 Controller ?这在实际项目开发中也是用到的最多的,那么 SpringMVC 的参数绑定是怎么实现的呢?下面我 ...

  4. scrapy使用

    我们都知道大名鼎鼎的爬虫框架scrapy,它是基于twisted框架基础上进行的封装,它是基于异步调用,所以爬取的速度会很快,下面简单介绍一下scrapy的组成. 首先我们先安装scrapy,如果是基 ...

  5. 3_yum rpm tar 命令及参数

    这个就是把上课听课时写下的笔记给复制粘贴过来了,如果写的不够详细或者哪里不明白,可以写在评论下面,我会一一个回复的:   1.yum centos 上 一般是yum  提供了安装包的查找安装及其删除  ...

  6. 推广技巧:新站要如何推广引流做到日IP10000?

    一.回复高人气帖子插楼推广 1.找高人气的帖子在二楼或者二楼楼层中直接插入链接推广.虽然这种方法存活率比较低,但也算是贴吧里面最直接的有效的方法.一般我们分为三种: 1.1图中链接是一个短网址,这个是 ...

  7. 一个页面多个iframe赋值

    先在页面上设置一个元素: <input type="hidden" id="content" value={$content}> 使用前端技术获取父 ...

  8. 数据库-MYSQL安装配置和删除

    * 课程回顾: * 完成注册和登陆的功能. * 准备的工作 * 技术.开源jar包 * 开发的功能使用MVC模式 * C:控制层(接收请求和从客户端发送过来的参数) * 接收参数(request对象) ...

  9. python的multiprocessing模块进程创建、资源回收-Process,Pool

    python的multiprocessing有两种创建进程的方式,每种创建方式和进程资源的回收都不太相同,下面分别针对Process,Pool及系统自带的fork三种进程分析. 1.方式一:fork( ...

  10. 【前端】webkit内核浏览器DIV滚动条样式修改和设置

    webkit内核浏览器DIV滚动条样式修改和设置 引言: 最近在做自己的小项目,为了设计出好看的页面费劲了心思,大到页面的整体布局,小到DIV的滚动条都不放过,以下是我通过查阅资料总结的webkit内 ...