python基础语法
2016-12-14 11:18
246 查看
定义方法
返回多个参数
#求list元素之和 def square_of_sum(L): constant = 0 sum_ = 0 for x in L: sum_+= x*x return sum_,constant print(square_of_sum([1, 2, 3, 4, 5])) a,b = square_of_sum([1, 2, 3, 4, 5]) print(a,b)
结果:
(55, 0) 55 0
python的函数返回多值其实就是返回一个tuple,也就是说可以返回多值,在语法上,返回一个tuple可以省略括号
定义默认参数
#计算计算x的N次方的函数(这里设置了默认参数则计算平方,方法调用时无需传默认参数) def power(x, n=2): s = 1 while n > 0: n = n - 1 s = s * x return s print(power(6))
可变参数(简化调用)
# 定义可变参数 def average(*args): print(sum(args)/len(args)) average(1,2,3)
循环
循环几次
for i in range(2): print(i)
range()函数可以创建一个数列:
range(1, 101)
[1, 2, 3, …, 100]
类似java foreach
for i in list: print(i)
类似java普通for循环
for i,v in enumerate(list): print(i,list[i])
while循环
#simple while iterator sum = 0 x = 1 while True: sum = sum + x x = x + 1 if x > 100: break print(sum)
多重循环
#多重循环 for x in ['A', 'B', 'C']: for y in ['1', '2', '3']: print(x+y)
x 每循环一次,y 就会循环 3 次,这样,我们可以打印出一个全排列:
A1
A2
A3
B1
B2
B3
C1
C2
C3
if else
age = 19 if age >= 18: print('adult') elif age >= 6: print('teenager') elif age >= 3: print('kid') else: print('baby')
集合
list
#define a list list = ['apple','orange'] ##add an object list.append('banana') ##remeove an object list.remove('apple') ##replace an object list[0] = 'potato' ###list size len(list)
tuple
tuple是另一种有序的列表,中文翻译为“ 元组 ”。tuple 和 list 非常类似,但是,tuple一旦创建完毕,就不能修改了。创建tuple和创建list唯一不同之处是用( )替代了[ ]
#create a tuple _tuple_ = ('a', 'b', ['A', 'B']) tuple__ = _tuple_[2] tuple__[0] = 'C' javafor(_tuple_)
值得注意的是这里说的不可变指的是tuple的元素,其中list的元素可变,所以输出结果为
['C', 'B']
dict(格式类似于json,数据结构类似于map,无序的)
#define a dict d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } #取出 print('Adam',str(d.get('Adam'))) #重新赋值 d['Adam'] = 'fw' #遍历 for k in d: print(k+":",d[k])
set(和java类似)
#create a set list = ['lx','fw','lx'] #将一个List转换为set s = set(list) print(s) #这里新增元素和list不同list是append(),而这是add() s.add('duck') s.remove('lx') print(s)
结果:
{'lx', 'fw'} {'duck', 'fw'}
切片操作(取部分元素操作)
list和tuple的切片
#range()函数可以创建一个数列 L = range(1, 101) #前10个数 print L[0:10] #3的倍数 print L[2::3] #不大于50的5的倍数 print L[4:50:5] #第一个参数表示从索引几开始取,第二个表示结束索引,第三个参数表示隔几位一取
把list换成tuple,切片操作完全相同
字符串的切片
#首字母大写 def firstCharUpper(s): return s[0:1].upper()+s[1:] print(firstCharUpper('hello'))
相关文章推荐
- Python连载系列之Python语法基础3:Python中的字符串和数据结构
- Python 基础语法(二)
- Python基础语法
- 【python】python语法基础
- Python基础语法学习(字符串)
- Python连载系列之Python语法基础1:开始使用Python
- python 基础教程之语法篇章——一小时入门python__对比python与C语言的语法异同
- Python 基础语法知识(二)
- Python 基础语法知识(一)
- Python语法基础——关于全局变量与局部变量
- Python 基础语法(三)
- python学习日记1--基础语法篇
- learning python of 基础语法
- Python 基础语法知识(三)
- Python2 基础语法(三)
- Python 基础语法(一)
- Python 基础语法知识
- Python2 基础语法(一)
- Python的基础语法
- Python语法基础——关于全局变量与局部变量