python_day2

1、入门知识

一般意义上的python

cpython,c解释器—>解释成.pyc文件的字节码-à机器码àcpu调度

jpython,java解释器  java字节码(跟java交互快)

ironpython, c#解释器 c#字字节码

pypy 到机器码都是编译,然后直接执行;其他是编译到字节码;引入微线程 

2、内容编码

python3是默认带上 #-*-coding:utf-8 -*-

python2 是ascii  8位

python2.7 使用Unicode 至少 16位 python2.7 默认使用

utf-8 是对Unicode的精简,对字符,数字用8位存,

欧洲的字符16位,2个字节

汉语 24位,3个字节

python2.x中的编码与解码

 

3、单行注释 #,多行注释 一对"""或'''

4、执行脚本,传入参数需要引入模块 import sys用sys.argv用来接收引入的参数

5、优先找对应名称的.pyc文件,如果.pyc文件被修改,则执行py文件覆盖原先的pyc文件

6、缓冲池:提高执行效率,减轻内存负担;数字缓冲,小数字池:-5到257;字符串:算法,算出权重排列,权重高放到缓冲区

7、输入输出,input();输入密码时不可见 要引入import getpass模块使用getpass.getpass()

8、基本数据类型

整形

在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807

a = 21474836471 -->int

不要直接去减,先要赋值再去减,不然是先设定为long

print(a)

a = 21474836472 -->L

长整形

跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。

浮点型

浮点数用来处理实数,即带有小数的数字。类似于C语言中的double类型,占8个字节(64位),其中52位表示底,11位表示指数,剩下的一位表示符号。

布尔型

真或假
1 或 0

字符串(其实存的是字符数组[‘x’,’x’,’x’])

字符串拼接(用+号)字符串做一次加减会重新开辟 一块空间,做几次加几次

如果用字符串格式化只会创建两次

name = “xxx”

print “I am %s“ %name

输出 I am xxx

 9、字符串操作

移除空白 strip

分割 split

长度 len(obj)

索引 obj[1]

切片 obj[1:],obj[1:10]

10、列表

列表的创建方式

l1 = [1,2,3,4,5]

l1 = list(1,2,3,4,5)

列表的操作

索引 index

追加 append

删除 del remove pop

循环 for,while(foreach)

   break;continue;pass;return;exit

   if xx:

    pass

  else:

    pass

pass相当于占位

exit(0...)退出程序

包含 in =_contains_

元组(元组的元素不可以修改,元组的元素的元素可以修改)

 

pass相当于占位

exit(0…)程序退出

包含 in =_contains_

11、元组(元组的元素不可以修改,元组的元素的元素可以修改)

  基本操作:和列表一样

12、字典(键值对)dict内置类

循环

集合

 

计数器

有序字典

默认字典

可命名元组

双向队列

单项队列

 

文件操作

打开文件

操作文件

管理上下文

 

 

面向对象

对于python,一切事物都是对象,对象是类创建的,对象引用的所有功能都是去类里面找的

类里面存在着功能,对象里面是值

 

查看对象是从哪个类创建的

如果是内置的则直接显示;额外的会显示类的路径

int类中的功能

取得(商,余)

地板除,相当于5//6

divmod 两种方式

abs 取绝对值 两种方法

相加 两种方法

 

字符串 str

type()返回类

dir()快速获取类中的成员

_contains_ 相当于in

{3里面没有了

_format_ 字符串格式化

name = ‘eric{0}’

name.__format__(“alex”)

print(name)}

 

name = ‘eric’

name.captalize()首字母大写

casefold()大写变小写

name.center(20,’*’) 剧中,长度20,填充字符为*

count(’d’,0,10)从0到9的位置中d出现的次数出现字符的次数

改变字符编码

字符串是不是以e结尾

大于等于0,小于3

 

默认一个tab(\t)转换为8个空格

在一个字符串里找子序列,find如果没有找到返回-1,index则报错

 

字符串格式化(拼接)动态参数写法

 

判断

将一个序列连接起来

ljust,rjust,center剧左,右,中,长度xx,填充字符为x

 partion字符串分割

replace替换转换的个数

split与splitlines

 

swapcase大小写转换

title 所有字符串首字母大写

upper 大写

zfill 右对齐,不够用0补齐

 

with 管理上下文,不需要执行close文件

 

列表操作

 

posted on 2016-01-27 17:45  槐米  阅读(69)  评论(0)    收藏  举报

导航