Skip to content

Commit 83a55df

Browse files
committed
man.py update
1 parent 3902bc1 commit 83a55df

File tree

578 files changed

+72885
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

578 files changed

+72885
-0
lines changed

.metadata/.lock

Whitespace-only changes.

.metadata/.log

Lines changed: 1684 additions & 0 deletions
Large diffs are not rendered by default.
438 Bytes
Binary file not shown.

.metadata/.plugins/com.python.pydev.analysis/python_v1_4fkkw82y758w8n00pmr7xyd93/python.pydevsysteminfo

Lines changed: 12927 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 206 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,206 @@
1+
#! /usr/bin/python
2+
#coding:UTF-8
3+
'''
4+
@author: neptune
5+
@time: 2014-02-20
6+
@descript: 主要记录Pyhon中一些常用的东西.建议宽屏阅读使用
7+
'''
8+
import sys
9+
10+
def demo_help():
11+
print "快速查找:利用编辑的查找功能查找@关键字。"
12+
print "\t例如:查找list相关的东西:输入@list"
13+
print "\t查看运行结果:shell$ ./man.py list"
14+
print "输入./man.py -m list 可以查看list的API帮助"
15+
16+
def demo_api(datatype,spacing=15,collapse=1):
17+
"""Print methods and doc-strings wtih object"""
18+
19+
methodList = [method for method in dir(datatype) if callable(getattr(datatype,method))]
20+
processFunc = collapse and (lambda s: " ".join(s.split())) or (lambda s: s)
21+
22+
print "\n".join(["%s %s" %
23+
(method.ljust(spacing),processFunc(str(getattr(datatype,method).__doc__)))
24+
for method in methodList]);
25+
26+
#===========================================================================================================
27+
#@list
28+
# 演示list相关的用法
29+
#===========================================================================================================
30+
def demo_list():
31+
"演示list相关的用法"
32+
print "list类型:属于一种集合类型,它非常灵活,支持在源处修改,可按需增长缩短,可以包含任何类型的对象亦可嵌套"
33+
34+
#define list variable 定义list类型的变量
35+
li1 = [];
36+
li2 = [1,2,3,4,5]
37+
li3 = [1,2,3,'4',5]
38+
li4 = [1,'snakeam',['am','pm'],'fun']
39+
li5 = list("list-variable")
40+
li6 = list(range(-4,4))
41+
print "li1:",type(li1),"+\t",li1
42+
print "li2:",type(li1),"+\t",li2
43+
print "li3:",type(li1),"+\t",li3
44+
print "li4:",type(li1),"+\t",li4
45+
print "li5:",type(li1),"+\t",li5
46+
print "li6:",type(li1),"+\t",li6
47+
48+
#index form 0-index
49+
print li2[0]
50+
print li3[3]
51+
print li4[1][1]
52+
53+
#split
54+
print li2[:3] #取前三个元素,返回list
55+
print li3[3:] #取第三个以后的元素,返回list
56+
print li3[2:4] #从第三个开始取到第五个但不包括5
57+
print li3[-1:] #取最后一个
58+
59+
#add or del
60+
li1.append("hello")
61+
print li1
62+
li1.insert(0, "xcx")
63+
print li1
64+
li1[0:0] =['hmj']
65+
print li1
66+
li1[1:1] =['zxy']
67+
print li1
68+
li1[len(li1):1]=['world']
69+
print li1
70+
li1[-1] =['!','wan an']
71+
print li1
72+
73+
del li1[0]
74+
print li1
75+
li1.remove(li1[0])
76+
print li1
77+
li1[2][0:1]=['I']
78+
print li1
79+
li1.pop()
80+
print li1
81+
82+
#len
83+
print "li1's length",len(li1)
84+
85+
#iterator
86+
listdemo = [x** 2 for x in li2]
87+
print listdemo
88+
89+
90+
for x in li2:print x*2
91+
#filter element : if expresstion
92+
li = [x *2 for x in li1 if x > 2]
93+
print li
94+
#
95+
# list的方法
96+
# L.append(var) #追加元素
97+
# L.insert(index,var)
98+
# L.pop(var) #返回最后一个元素,并从list中删除之
99+
# L.remove(var) #删除第一次出现的该元素
100+
# L.count(var) #该元素在列表中出现的个数
101+
# L.index(var) #该元素的位置,无则抛异常
102+
# L.extend(list) #追加list,即合并list到L上
103+
# L.sort() #排序
104+
# L.reverse() #倒序
105+
# list 操作符:,+,*,关键字del
106+
# a[1:] #片段操作符,用于子list的提取
107+
# [1,2]+[3,4] #为[1,2,3,4]。同extend()
108+
# [2]*4 #为[2,2,2,2]
109+
# del L[1] #删除指定下标的元素
110+
# del L[1:3] #删除指定下标范围的元素
111+
# list的复制
112+
# L1 = L #L1为L的别名,用C来说就是指针地址相同,对L1操作即对L操作。函数参数就是这样传递的
113+
# L1 = L[:] #L1为L的克隆,即另一个拷贝。
114+
#===========================================================================================================
115+
#@dict
116+
# 演示dict相关的用法
117+
#===========================================================================================================
118+
def demo_dict():
119+
"""演示dict的常用操作"""
120+
#静态的创建一个字典
121+
d1 = {} #创建一个空字典
122+
print d1
123+
d2 = {'name':'snakeam','skill':'decode'} #创建有俩想的字典
124+
print d2
125+
d3 = {'food':{'ham':1,'egg':2}} #字典的嵌套
126+
#Python 3.x
127+
#d4 = dict(name='xcx',skill='god')
128+
print d3
129+
# print d4
130+
#动态构造一个字典
131+
#在Python3.x和Python2.x中字典可以用字典解析来创建。
132+
#字典解析运行一个隐士循环,根据每次迭代的收集表达式键/值结果来填充一个新的字典
133+
#动态初始化一个字典的标准方法都是:将其键和值对应起来传递个dict调用
134+
#zip函数是在一个单个调用中从键和值的列表来构建一个字典的方式之一
135+
li =['a','b','c']
136+
li2 =[1,2,3,4]
137+
d5 = dict(zip(li,li2))
138+
print d5
139+
140+
#演示dict字典的取值
141+
print d2['name']
142+
print d3['food']['egg']
143+
#dict.get(key,0) 如果没有则返回默认值,[key]方式没有则抛出异常
144+
print d2.get('age',100)
145+
146+
#成员关系:键是否存在测试
147+
print ('ham' in d3)
148+
#has_key(key)判断字典是否包含莫个键
149+
print d2.has_key('age')
150+
151+
152+
#Python2.x
153+
list_key = d5.keys()
154+
print "type=>",type(list_key) #list
155+
print list_key #['a','b','c']
156+
157+
list_value = d5.values()
158+
print "type=>",type(list_value) #list
159+
print list_value #[1,2,3]
160+
161+
list_item = d5.items()
162+
print "type=>",type(list_item) #list
163+
print list_item #[('a',1),('b',2),('c',3)]
164+
#python3.x
165+
#keys,values,items都返回试图对象,而不向Python2.x中返回实际的结果集列表
166+
#视图对象是可迭代。这就意味着每次产生一个结果集项,而不是在内存中直接生存列表
167+
#视图保存了字典的最初顺,但他们不支持索引和列表的sort等方法。打印时也不现实自己的项
168+
169+
#add mondify
170+
d2['age']=100 #为d2新增{'age':100}
171+
print d2
172+
d2['age']=20 #修改age
173+
print d2
174+
del d2['name'] #删除name建值对
175+
print(d2.pop('age'))
176+
print(d2.popitem())
177+
#字典合并
178+
d1.update(d2)
179+
print d1
180+
181+
#字典遍历
182+
print d5
183+
for (k,v) in d5.items(): print "%s:%s" % (k,v)
184+
#最笨的方法
185+
for d in d5: print "%s:%s" % (d,d5[d])
186+
for k,v in zip(d5.keys(),d5.values()): print "%:%s" % k,v
187+
#效率最高的
188+
for k,v in d5.iteritems(): print "%s:%s" % (k,v)
189+
190+
191+
192+
#===========================================================================================================
193+
if __name__ == "__main__":
194+
#print sys.argv
195+
if len(sys.argv) >=2:
196+
selfMod = __import__(__name__)
197+
if sys.argv[1] == '-m':
198+
return_function = getattr(selfMod,"demo_api")
199+
if(callable(selfMod.return_function) and callable(selfMod.return_function)):
200+
return_function(sys.argv[2])
201+
else:
202+
return_function = getattr(selfMod,"demo_%s" % sys.argv[1])
203+
if(callable(selfMod.return_function) and callable(selfMod.return_function)):
204+
return_function()
205+
else:
206+
demo_help()
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
#! /usr/bin/python
2+
#coding:UTF-8
3+
'''
4+
@author: neptune
5+
@time: 2014-02-20
6+
@descript: 主要记录Pyhon中一些常用的东西.建议宽屏阅读使用
7+
'''
8+
9+
if __name__ == "__main__":
10+
print "快速查找:利用编辑的查找功能查找@关键字。"
11+
print "\t例如:查找list相关的东西:输入@list"
12+
13+
#===========================================================================================================
14+
#@list
15+
# 演示list相关的用法
16+
#===========================================================================================================
17+
def demo_list():
18+
"演示list相关的用法"
19+
print "list类型:属于一种集合类型,它非常灵活,支持在源处修改,可按需增长缩短,可以包含任何类型的对象亦可嵌套"
20+
21+
#define list variable 定义list类型的变量
22+
li1 = [];
23+
li2 = [1,2,3,4,5]
24+
li3 = [1,2,3,'4',5]
25+
li4 = [1,'snakeam',['am','pm'],'fun']
26+
li5 = list("list-variable")
27+
li6 = list(range(-4,4))
28+
print "li1:",type(li1),"+\t",li1
29+

0 commit comments

Comments
 (0)