启动python
退出python
安装 readline-devel Python-2.7.9 ipython
启动ipython
id
type
切片显示
最大数 最小数
判断是否大写小写
转换是否大写小写
首字大写
查找替换,出现的次数
split字串切割为序列
strip去除两头的字符
len (name) 显示name的长度
name1 is name2 判断两个变量引用的对象是否一样
type(name1) is type(name2) 判断两个变量的类型是否一样
a=raw_input("输入字符") 引用
print name1,name2 输出多个变量用,隔开
print '%f' %num 显示浮点
print '%d' %num 显示整数部分
print '第一个%d,第二个%f' %(num1,num2)
%s以字符串显示
help (list) 显示帮助
name.upper() 显示name为大写
print '第一个%-20f,第二个%-20f' %(num1,num2) 显示20长度左对齐
函数
def printName(name):
生成随机数andom.random()
局域代码块
函数的参数匹配
接受多个参数不出错
比较两字符串大小
载入模块,调用
# 注释
显示str的帮助属性print str.__doc__
显示str的帮助信息 help(str)
两类型的三种比较
强制转换
CentOS命令行
1 启动python:python
退出python:exit()
2 程序安装readline-devel
yum install readline-devel
安装Python-2.7.9.tar.xz
./configure --prefix=/usr/local/python27
安装ipython-1.2.1.tar.gz
进入解压后的ipython-1.2.1文件夹,
编译 /usr/local/python27/bin/python2.7setup.py build
安装 /usr/local/python27/bin/python2.7setup.py install
ln -sv/usr/local/python27/bin/python2.7 /usr/bin/python27
ln -sv/usr/local/python27/bin/ipython /usr/bin/
启动ipython 直接输入ipython
数值,字符都是不可变量,一个变量多次赋值,只是值的地址发生改变,对象一旦存在,就直接引用
In [4]: id(num) id指向变量的地址
Out[4]: 27844904
name = 'jerry' 字符是以数组的形式储存的
In [6]: print name [3]
r
In [7]: type (name) 获取name是什么类型的变量,
Out[7]: str
print _ 显示最后一次的结果
列表是可变对象,在内存原处修改,
In [12]: l1 =["welcome","to","Linux"]
In [13]: l1[0]
Out[13]: 'welcome'
In [14]: l1[0][1]
Out[14]: 'e'
l1[1]="To" 指向‘To’,‘to’并没有释放
print l1 显示出来
切片显示 jerry
In [18]: name[0] 显示一个0
Out[18]: 'j'
In [19]: name[0:3] 显示0到3
Out[19]: 'jer'
In [20]: name[1:] 显示1到最后
Out[20]: 'erry'
In [22]: name[1:4:2] 步进显示,一次迈2步,会创建新的内存片
Out[22]: 'er'
name[-1]从最后一个数
name[-1::-2]从倒数第一个到最后,2个步进
显示最大数 最小数
name ="1234567890888"
In [74]: min(name)
In [75]: max(name)
all判断序列中是否全部为ture
any判断序列中任意部分为ture
name ="haha dewew"
all(name)
name.isupper() name是否全部是大写
name.upper() 把name转换为大写
name.islower() name是否全部是小写
name. lower() 把name转换为小写
name.capitalize() 首字大写
In [9]: name ="hahadewew"
In [10]:name.index("de") 索引
Out[10]: 5
name.replace('d',"D") 相当于查找替换
Out[91]: 'haha Dewew'
In [1]:s="12113131313131"
In [2]:s.replace("1","hello ,")
Out[2]: 'hello ,2hello ,hello,3hello ,3hello ,3hello ,3hello ,3hello ,'
In [4]:s.replace("1","hello ,",2) 出现的次数
Out[4]: 'hello ,2hello,13131313131'
split字串切割为序列
name ="hah.hfasfas.reygre"
name.split(".")
name.split(".",3)出现的次数
strip去除两头的字符
name = "wewqeqwe"
name.strip("w")
len (name) 显示name的长度
name1=‘haha’
name2=‘haha’
name1 is name2 判断两个变量引用的对象是否一样
type(name1) is type(name2) 判断两个变量的类型是否一样
In [35]: raw_input("输入字符")
输入字符32
Out[35]: '32'
In [36]: a=raw_input("输入字符") 引用
输入字符haha
In [37]: print a
haha
In [38]: print name1,name2 输出多个变量用,隔开
haha fuck
num =9.9
print '%f' %num 显示浮点
print '%d' %num 显示整数部分
In [57]: print '第一个%d,第二个%f' %(num1,num2)
第一个7,第二个9.900000对应匹配数值
print '第一个%e,第二个%f' %(num1,num2)
第一个7.300000e+00,第二个9.900000
%s以字符串显示
dir(__builtins__) 显示可以直接使用的模块
help (list) 显示帮助
name.upper() 显示name为大写
print '第一个%+f,第二个%+f' %(num1,num2) 显示数值符号
print '第一个%-f,第二个%-f' %(num1,num2) 显示左对齐
print '第一个%-20f,第二个%-20f' %(num1,num2) 显示20长度左对齐
d1 = {'a':22, 'b':44}
print d1['a']
22
print 'haha %(a)f' %d1
haha 22.000000
函数
In [13]: s=sum([1,2,3,4,5,6,7,8,9,0])
In [16]: print s
45
def printName(name):
printname
也可以直接f
In[21]: f
Out[21]:8
返回一个
In[33]: def f():
....: return range(6)
....:
In[34]: f()
Out[34]:[0, 1, 2, 3, 4, 5]
调用return
In[18]: def h(x,y):
....: return x+y
....:
In[19]: f=h(2,6)
In[20]: print f
8
printName('haha')
test=33 printName(test) 对象引用
查看name对象是否额可以被调用callable(name)
查看name的方法有哪些name.按一下TAB键
生成数列10个数 range(10)
生成数列1到9 range(1,9)
生成步进2的数列range(2,11,2)
导入random模块 import random
生成随机数andom.random()
随机选择students=['a','b','c'] random.choice(students)
局域代码块
vim a.py
#!/usr/local/python/bim/python2.7
name="jerry"
def printName(a):
print a 注意代码块的缩进 4个字符,不是空格
num = 3 局域代码结束
print num
printName(name)
函数的参数匹配
In [41]: def h(n,a):
....: print "%s %s" %(n,a)
....:
In [42]: h(1,2)
1 2
In [43]:h("jerry",32)
jerry 32
接受多个参数不出错
In [57]: def g(x,*h):
....: print x
....: print h
....:
In [58]: g(1,2,45,0)
1
(2, 45, 0)
In [59]: def g(x,*h,**j):
print x
printh
....: print j
....:
In [60]: g(1,3,5,78,89)
1
(3, 5, 78, 89)
{}
看看
In [63]:g(1,3,5,78,89,x=3,d=6,i=8)
---------------------------------------------------------------------------
TypeError Traceback(most recent call last)
<ipython-input-63-ab7a1acc574c>in <module>()
----> 1g(1,3,5,78,89,x=3,d=6,i=8)
TypeError: g() gotmultiple values for keyword argument 'x' 看报错
In [64]:g(1,3,5,78,89,d=6,i=8)
1
(3, 5, 78, 89)
{'i': 8, 'd': 6}
内置函数
max(7,6,4)
min(2,7,9)
abs(-10)
len([1,3,4,5,6])
比较两字符串大小
In [80]:cmp("hello","hello")
Out[80]: 0
In [81]:cmp("hello","hell")
Out[81]: 1
In [82]:cmp("h","hel")
Out[82]: -1
载入模块,调用
vim mod.py
#!/usr/local/python
def printName(a):
print a
vim b.py
#!/usr/local/python
import mod
name ="jerry"
mod.printName(name)
# 注释
\ 续行符
’’’跨行,类似注释的作用
“ ”在头部注释,可以使用__doc__调用
显示str的帮助属性print str.__doc__
显示str的帮助信息 help(str)
判断b是否为小写 b.islower()
------------------------------------------
两类型的三种比较
In[6]: name == name1
Out[6]:True
In[7]: name is name1
Out[7]:True
In[8]: type(name) is type(name1)
Out[8]:True
---------------------------------------------
强制转换
In [9]: num =3.14
In [10]: type(num)
Out[10]: float
In [11]: str(num)
Out[11]: '3.14'
In [12]: type(num)
Out[12]: float
In [13]: repr(num)
Out[13]: '3.14'
这两种转换效果大多差不多 ,转换后输出了,没有引用
haha = repr(num) 引用转换后的
name2 = int(haha) 也可以转换为float
list数据类型
In [24]: name = "welcometo linux"
In [25]: name2 = list(name)
In [26]: print name2
['w', 'e', 'l', 'c', 'o','m', 'e', ' ', 't', 'o', ' ', 'l', 'i', 'n', 'u', 'x']
将列表类型转换为字符串
In [28]: name3 = str(name2)
In [29]: print name3
['w', 'e', 'l', 'c', 'o','m', 'e', ' ', 't', 'o', ' ', 'l', 'i', 'n', 'u', 'x']
将列表类型转换为元组,每个字符都为列表的基本元素
In [30]: str1 = "welcometo linux 2 22 2"
In [31]: str2 = tuple(str1)
In [32]: print str2
将字符转换为集合
str3 = set(str1)
创建字典,是(key value )的序列
In [35]: l1 =[('a',32),('b',43),('c',4324)]
In [36]: print l1
[('a', 32), ('b', 43), ('c',4324)]
In [37]: d1 = dict(l1)
In [38]: print d1注意创建字典的顺序
{'a': 32, 'c': 4324, 'b': 43}
把数字转换为ACSII表字符集
In [57]: num = 65
In [58]: c1=chr(num)
In [59]: print c1
A
将字符转化为整数值 ord
将字符转化为十六进制字串 hex
将字符转化为二进制字串 bin()
将字符转化为八进制字串 oct()
导入数学import math
math.sqrt(16)
指定为unicode码
In [65]: haha = u"hello"
In [66]: type(haha)
Out[66]: unicode
------------------------------------------------------------------
帮助 help(str.find)
序列之列表
列表定义 print haha
haha = []
haha = [1,2,3,4,5,6]
haha = [1,2,"haha"]
haha =[[1,2],["a","b"]]
在原处直接把下标为1的改为21
haha = [1,2,34,4,5,6,7]
haha[1] = 21
切片显示haha[1:3]
改为空 haha[1:3]=[]
删除列表中的 del(haha[1:3])
在列表后添加 haha.append(4545)
在后面附加一个列表
l3 = [1,2,4,5,45,56,7,8]
haha.append(l3)
统计出现的次数 haha.count(1)
把L3的元组合并过来 haha.extend(l3)
在第二个位置插入haha.insert(2,423432423)
弹出下标为4的 ,不指定就随机弹haha.pop(4)
删除值为6的元素 haha.remove(6)
把haha全部倒序 haha.reverse() 在原处修改
列表可以合并
l1 = [1,2,3],l2 =['q','w','d']
l1+l2 [1, 2, 3, 'q', 'w', 'd']
列表相乘 l1*4 重复4次
判断 某数是否在L1中 2323 in l1
不在就是 not in
切片级的修改 n=[1,2,3,4,5,6] n[1:]=[12,23,34,45,677,78]
print n à[1, 12, 23, 34, 45, 677, 78]