Python之路【第一篇:Python基础之拾遗】

拾遗一:Python种类

  1、Cpython:

    由C语言实现,将.py文件编译为.pyc文件的字节码,再转换为机器码。

    2、Jpython:

    由JAVA语言实现,将python的代码编译为JAVA的字节码,再转换为机器码。

    3、Ironpython:

    由C#实现,将将python的代码编译为C#字节码,再转换为机器码。

  4、pypy:

    将python的代码转换为字节码的同时也转换为机器码,提高执行速度。

拾遗二:Python的编码

  1、ASCII码(American Standard Code for Information Interchange,美国标准信息交换代码):用1个字节表示,即2**8=256,最多只能表示256个字符。

  2、Unicode(万国码):用至少2个字节来表示,即2**16=65536,可以满足每种语言字符的需求。

  3、UTF-8:是对Unicode编码进行压缩和优化,将所有的字符进行分类;其中ascii码用1个字节保存。

拾遗三:脚本执行时加入参数

  1、Python中存在大量模块,用模块开发Python程序非常简洁;Python中类库有三种:

    ①Python自带的模块

    ②免费开源的模块

    ③自己开发的模块

  2、Python内部提供一个sys的模块,其中sys.argv用来捕获执行Python程序时加入的参数

1 #!/usr/bin/env python
2 # -*- conding:utf-8 -*-
3 import sys
4 print sys.argv

拾遗四:数据类型详解

  1、类与对象的关系:

    Python中一切事物都是对象,类创建对象。相同类的对象都具有相同的功能并且存放在同一个内存地址中。

  2、整型,每个整数都具有一下功能:

    •bit_length:计算该整数占的位数

1 #!/usr/bin/env python
2 a = 10 
3 int.bit_length(a)
4 4
int

    •conjugate:返回该值的共轭复数值

    •__abs__:返回该值的绝对值

#!/usr/bin/env python
a = -10 
a.__abs__()    <==>  abs(a)
10
int

    •__and__:进行‘与’预算

1 #!/usr/bin/env python
2 a = 4 
3 b = 7 
4 a.__and__(b)    <==>   a&b
5 4
int

    •__cmp__:比较两个数的大小

1 #!/usr/bin/env python2        #python2.0里面适用,3.0取消了
2 a = 10 
3 b = 7 
4 a.__cmp__(b)    <==>    cmp(a,b)
5 1
6 b.__cmp__(a)    <==>    cmp(b,a)
7 -1
int

    •__bool__:当值为非0时返回值为True;当值为0时,返回值为False

1 #!/usr/bin/env python
2 a = 1 
3 b = 0 
4 int.__bool__(a)
5 True
6 int.__bool__(b)
7 False
int

    •__coerce__:强制生成一个元组

1 #!/usr/bin/env python2    #python2.0里面适用,3.0取消了
2 a = 1
3 b = 2
4 a.__coerce__(b)    <==>    corece(a,b)
5 (1,2)
int

    •__divmod__:得到商和除数组成的一个元组

1 #!/usr/bin/env python
2 a = 4
3 b = 3
4 a.__divmod__(b)    <==>    divmod(a,b)
5 (1,1)
int

    •__div__:除法

 1 2.0里面:
 2     #!/usr/bin/env python2
 3     a = 4 
 4     b = 3
 5     a.__div__(b)    <==>    div(a,b)
 6     1
 7 3.0里面;
 8     #!/usr/bin/env python
 9     a = 4 
10     b = 3
11     a/3
12     1.333333
int

    •___float__:将整型转化为浮点型(带小数)

1 #!/usr/bin/env python
2 a = 4 
3 a.__float__()    <==>    float(a)\
4 4.0
int

    •__floordiv__:返回商的整数部分

1 #!/usr/bin/env python
2 a = 10 
3 b = 3 
4 a.__floordiv__(b)    <==>    a//b
5 3
int

      •__format__

    •__int__:转换为整型

1 #!/usr/bin/env python
2 a = 10.0
3 a.__int__()    <==>    int(a)
4 10
int

    •__invert__:取反数

1 #!/usr/bin/env python
2 a = 4 
3 a.__invert__()
4 -5
int

    •__long__:转换为长整数

1 #!/usr/bin/env python2    #python2.0里面适用,3.0取消
2 a = 4 
3 a.__long__()    <==>    long(a)
4 4L
int

    •__mod__:取余数

1 #!/usr/bin/env python
2 a = 10 
3 b = 3
4 a.__mod__(b)    <==>    a%b
5 1
int

    •__mul__:相乘

1 #!/usr/bin/env python
2 a = 3 
3 b = 4
4 a.__mul__(b)    <==>    a*b
5 12
int

    •__neg__:取负数

1 #!/usr/bin/env python
2 a = 3
3 a.__nug__()    <==>    -a
4 -3
int

    •__pow__:幂运算

1 #!/usr/bin/env python
2 a = 3
3 a.__pow__(2)    <==>    pow(3,2)
4 9
int

    •__repr__:转换为解释器可读取形式

1 #!/usr/bin/env python
2 a = 3
3 a.__repr__()    <==>    repr(a)
4 'a'
int

    •__str__:返回人可读取形式,如果没有人可读取形式则返回解释器可读取形式。同__repr__

  3、长整型:

    如:473946193472375。具备功能如同整型

  4、浮点型:    

    如:3.4。具备功能如同整型

  5、字符串:

    每个字符串都具备以下功能:

    •capitalize:首字母变大写

1 #!/usr/bin/env python
2 a = ('qwer')
3 a.capitalize()
4 Qwer
str

    •center(长度,‘填充内容’);内容居中

1 #!/usr/bin/env python
2 a = 'qwer'
3 a.center(10,'*')
4 ***qwer***
str

    •count('查询的字符',start,end):查询字符串内子序列的个数

1 #!/usr/bin/env python
2 a = 'qwerqwer'
3 a.count('qw',0,9)
4 2
str

    •endswith('字符',start,end):判断在该区间内是否以该字符结束,返回值为True和False

1 #!/usr/bin/env python
2 a = 'qwerasdf'
3 a.endswith('df',0,10)
4 True
5 a.endswith('df',0,5)
6 False
str

    •expandtabs():将tab转换为空格,默认一个tab转换为8个空格

1 #!/usr/bin/env python 
2 a = '    qwer'
3 b = a.expandtabs()
4 a
5 \tqwer
6 b
7         qwer
str

    •find('字符'):查找字符的位置,查询不到返回值为-1

1 #!/usr/bin/env python
2 a = 'qwer'
3 a.find('q')
4 0 
5 a.find('f')
6 -1
str

    •index():查询子序列的位置,查不到就报错

1 #!/usr/bin/env python 
2 a = 'qwer'
3 a.index('e')
4 3 
5 a.index('f')
6 xxxxxxxxxxxxxxxx    #报错
str

    •isalnum():判断是否为字母或者数字,返回值为True和False

1 #!/usr/bin/env python
2 a = 'adsf13'
3 a.isalnum()
4 True
5 
6 a = '$%^&'
7 a.isalnum()
8 False
str

    •isalpha():判断是否为字母,返回值为True和False

1 #!/usr/bin/env python
2 a = 'asfafd'
3 a.isalpha()
4 True
5 
6 a = 'asfe2314'
7 a.isalpha()
8 False
str

    •isdigit():判断是否为数字

1 #!/usr/bin/env python
2 a = 'aseqw12123'
3 a.isdigit()
4 False
5 
6 a = '214232'
7 a.isdigit()
8 True
str

    •islower():判断是否为小写

1 #!/usr/bin/env python
2 a = 'asiudfef1243'
3 a.islower()
4 True
5 
6 a = 'DQ34rfdgf'
7 a.islower()
8 False
str

    •isspace():判断是否为空格

1 #!/usr/bin/env python
2 a = 'fdff fds'
3 a.isspace(0
4 False
5 
6 a = '  '
7 a.isspace()
8 True
str

    •istitle():

    •isupper():

    •join():连接

1 #!/usr/bin/env python
2 a = 'qwer'
3 b = '1234'
4 a.join(b)
5 1qwer2qwer3qwer4qwer
str

 

    •ljust(nu,'填充内容'):左对齐,右填充

1 #!/usr/bin/env python
2 a = 'qwer'
3 a.ljust(10,'*')
4 qwer******
str

    •lower():变小写

1 #!/usr/bin/env python
2 a = 'QWER'
3 a.lower()
4 qwer
str

    •lstrip():移除左侧空白

1 #!/usr/bin/env python
2 a = '     qwer'
3 a.lstrip()
4 qwer
str

    •partition():分割成前、中、后三部分

1 #!/usr/bin/env python
2 a = 'qwer'
3 a.partition('e')
4 'qw','e','r'
str

    •replace('old','new'):替换

1 #!/usr/bin/env python
2 a = 'qwer'
3 a.replace('qw','as')
4 aser
str

     •split('字符'):将该字符的两边进行切割,且不保留本字符

1 #!/usr/bin/env python
2 a = 'qwert'
3 a.split('e')
4 'qw','rt'
str

    •splitlines():根据换行分割

    •startswith(‘’):判断是否以该字符开始

1 #!/usr/bin/env python
2 a = 'qwer'
3 a.startswith('q')
4 True
5 a.startswith('e')
6 False
str

    •strip():移除两边空白

1 #!/usr/bin/env python
2 a = '   qwer   '
3 a.strip()
4 'qwer'
str

    •swapcase():大写变小写,小写变大写

1 #!/usr/bin/env python
2 a = 'QWERqwer'
3 a.swapcase()
4 'qwerQWER'
str

    •transalite():转换,需要先做一个对应表,最后一个表删除字符集合

    •zfill():返回指定长度的字符串,原字符串右对齐,左边位补0

1 #!/usr/bin/env python
2 a = 'qwer'
3 a.zfill(5)
4 '0qwer'
str

  6、列表

    每个列表都具备以下的功能:

    •append():在列表末尾添加新的元素

 

1 #!/usr/bin/env python
2 a = [1,2,3,4,]
3 a.append(5)
4 [1,2,3,4,5,]
list

    •count():返回列表中某个元素的个数

1 #!/usr/bin/env python
2 a = [1,1,1,2,3]
3 a.count(1)
4 3
list

    •extend():将两个列表组合在一起扩展为一个新的列表

1 #!/usr/bin/env python
2 a = [1,2,3,4,]
3 b = ['q','w',]
4 a.extend(b)
5 a
6 [1,2,3,4,'q','w']
list

    •index():根据索引值去列表里面拿元素

1 #!/usr/bin/env python
2 a = [1,2,3,4,]
3 a.index(2)
4 3
list

 

    •insert():在某个位置插入一个元素

1 #!/usr/bin/env python
2 a = [1,2,3,4,5,]
3 a.insert(2,9)
4 a
5 [1,2,9,3,4,5,]
list

    •pop():在列表的末尾删除一个元素,并且返回删除的元素值

1 #!/usr/bin/env python
2 a = [1,2,3,4]
3 a.pop()
4 4
list

 

    •remove():删除指定的某个元素,一次只能删除索引值最小的那个元素

1 #!/usr/bin/env python
2 a = [1,2,3,1,2,3,]
3 a.remove(2)
4 a 
5 [1,3,1,2,3,]
list

    •reverse():将列表中的元素反向排列

1 #!/usr/bin/env python
2 a = [1,2,3,4,]
3 a.reverse()
4 a
5 [4,3,2,1,]
list

    •sort():排序

1 #!/usr/bin/env python
2 a = [1,3,2,4,]
3 a.sort()
4 a
5 [1,2,3,4,]
list

  7、元组:

    每个元组都具备列表中的index和count的功能;

  8、字典:

    循环时迷人循环key值 

    •clear():清除字典内容为空

1 #!/usr/bin/env python
2 a = {'key1':1,'key2':2}
3 a.clear()
4 {}
dict

    •copy():浅拷贝

    •fromkeys():给定的键值建立新的字典

1 #!/usr/bin/env python
2 a = {'key1':1,'key2':2}
3 a.fromkeys(['name','age'])
4 {'name':none,'age':none}
dict

    •get():访问字典中不存在的值不会提示报错

1 #!/usr/bin/env python
2 a = {'key1':1,'key2':2}
3 a.get('key3')
4 #不会报错
dict

    •has_key():判断字典中是否有这个键值(2.0适用,3.0取消)

1 #!/usr/bin/env python
2 a = {'k1':1,'k2':2}
3 a.has_key('k1')
4 True
5 
6 a.has_key('k3')
7 False
dict

    •items():将字典中的每项以列表的形式表现出来,每一项都是以(键,值)对的方式表现出来

1 #!/usr/bin/env python
2 a = {'k1':1,'k2':2}
3 a.items()
4 [('k1',1),('k2',2)]
dict

 

    •iteritems():项可迭代

    •iterjeys():键可迭代

    •itervalues():值可迭代

    •keys():将字典中的键以列表的形式表现出来

1 #!/usr/bin/env python
2 a = {'k1':1,'k2':2}
3 a.keys()
4 ['k1','k2']
dict

 

    •pop():获取并且在字典中删除,并且输出删除键的值

1 #!/usr/bin/env python
2 a = {'k1':1,'k2':2}
3 a.pop('k1')
4 a
5 {'k2':2}

 

    •popitem():随机删除字典中的键值

    •setdefault():如果键存在则返回键的值;如果键不存在则创建

1 #!/usr/bin/env python
2 a = {'k1':1,'k2':2}
3 a.setdefault('k1')
4 1
5 
6 a.setdefault('k3')
7 a
8 {'k1':1,'k2':2,'k3':None}
dict

    •update():更新字典

1 #!/usr/bin/env python
2 a = {'k1':1,'k2':2,'k3':'None'}
3 b = {'k3':3}
4 a.update(b)
5 a
6 {'k1':1,'k2':2,'k3':3}
dict

    •values():将字典中所有值以列表的方式表现出来

1 #!/usr/bin/env python
2 a = {'k1':1,'k2':2}
3 a.values()
4 [1,2]
dict

    •viewitems

    •viewkeys

    •viewvalues

 

你可能感兴趣的:(Python之路【第一篇:Python基础之拾遗】)