python中,函数、迭代、切片、列表生成
函数
不解释,等同与java中的方法、c中的函数(可能会有少许出入)
定义一个,求list,所有元素平方的和
def square_of_sum(L):
sum = 0
for n in range(len(L)):
sum = sum + L[n]*L[n]
return sum
print square_of_sum([1, 2, 3, 4, 5])
print square_of_sum([5, 0, 5, 15, 25])
- python中没那么多破事,各种类型兼容不兼容的问题,定义函数也就一个def的方法,如果是c的话还好,和java比起来简直就是天上地下
在Python中,定义一个函数要使用 def 语句,依次写出函数名、括号、括号中的参数和冒号:,
然后,在缩进块中编写函数体,函数的返回值用 return 语句返回。
python可以定义默认参数
def greet(a = 'world'):
print "Hello,",a
greet()
greet('Bart')
这是一个特别神奇的特性、、第一次见到
python定义可变形参
def printinfo(*args ):
for var in args:
print var
return
printinfo( 10 )
printinfo( 70, 60, 50 )
python的特性神奇到哭
可变参数的名字前面有个 * 号,我们可以传入0个、1个或多个参数给可变参数:
切片
[a: b :c]
a-> 开始的坐标,可以是负数
b-> 结束的坐标,可以是负数
c-> 设置a和b之间的差
#首字母大写
def firstCharUpper(s):
a = s[:1]
a = a.upper()
b = s[1:]
c = a+b
return a+b
print firstCharUpper('hello')
print firstCharUpper('sunday')
print firstCharUpper('september')
zip()函数可以把两个 list 变成一个 list
L = ['Adam', 'Lisa', 'Bart', 'Paul']
for index, name in zip(range(1, len(L)+1), L):
print index, '-', name
生成列表
list = range(1,101,2)
L = []
for a in list:
L.append(a*(a+1))
print L
说白了,还是集合,换了一个玩法
python 和前端的混用
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
def generate_tr(name, score):
if score < 60:
return '<tr><td>%s</td><td style="color:red">%s</td></tr>' % (name, score)
return '<tr><td>%s</td><td>%s</td></tr>' % (name, score)
tds = [generate_tr(name, score) for name, score in d.iteritems()]
print '<table border="1">'
print '<tr><th>Name</th><th>Score</th><tr>'
print '\n'.join(tds)
print '</table>'
白茶清欢无别事,我在等风也等你。

浙公网安备 33010602011771号