首页 > 代码库 > Python入门
Python入门
2015.7.31
慕课网 python 安装配置
安装之后配置环境变量(最后加入安装的python位置如:D:\Python),后在命令提示符中输入python进入python交互式环境,
也可以用Notepad编写python文件代码(.py),使用cd进入该文件路径,输入python hello.py(文件名)进行执行调用。
慕课网 python入门
python是注重大小写的
使用缩进控制代码体(代替其他语言的大括号)
函数放在调用之前
全局变量(global)在函数体重调用外面的变量
转义字符\ 如:
s=‘hello \‘word\‘
print s
多行字符串:r‘‘‘str‘‘‘用法:其中str可以有任意字符不需要转义
逻辑运算(短路运算):
在计算a and b时:如果a为false则返回结果必定是false返回a,若a为true则返回b
在计算a or b 时:若a为true则返回结果必定是true返回a,若a为false则返回b
list:
L=[1,2,3]
print L[0]
tuple:
T=(1,2,3)
print T[0]
tuple元组是不可更改的指向不可变,但当tuple中有元素为list,list的值是可变的,若要使其也为不可变的需要将list改为tuple
当tuple只有一个元素时后面多加个“,”
dict(键值对):
D={‘a‘:1,‘b‘:2}
print D[‘a‘]
dict查找速度快,占内存大,dict中的key是不可变的
set:
s = set([(‘Adam‘,95),(‘Lisa‘,85),(‘Bart‘,59)])
for x in s:
print x[0],‘:‘,x[1]
set中不含有重复值,且set中的值是不可变的
for循环:
L =[75,92,59,68]
sum =0.0
for score in L:
sum=sum+score
print sum /4
函数:
def add(x,y)
return x+y
print ff(4,5)
返回多值的函数
import math
def move(x, y, step, angle):
nx = x + step * math.cos(angle)
ny = y - step * math.sin(angle)
return nx, ny
x,y=move(100,100,60,math.pi/6)
print x,y
递归函数:
def fact(n):
if n==1:
return1
return n * fact(n -1)
print fact(20)
默认参数函数:
def power(x, n=2):
s =1
while n >0:
n = n -1
s = s * x
return s
print power(5)
可变参数函数:
def average(*args):
sum =0.0
if len(args)==0:
return sum
for x in args:
sum = sum + x
return sum / len(args)
print average()
print average(1,2)
print average(1,2,2,3,4)
切片(以下用list作为例子,tuple同样的做法):
L=[1,2,3,4,5,6,7,8,9,0];
print L[x:n]#从第L[x]取到L[n-1]
print L[x:n:y]#从L[x]取到L[n-1]每隔y位取一个
print L[:n]#从起始位取到L[n-1]
upper()将字符串转为大写,lower()将字符串转为小写
字符串拼接用+号
对字符串进行切片:
#将每个字符串的首字母变为大写
def firstCharUpper(s):
a=s[:1].upper()+s[1:]
return a
print firstCharUpper(‘hello‘)
print firstCharUpper(‘sunday‘)
print firstCharUpper(‘september‘)
range(x,y,n)生成从x到y-1的数组,每隔n个取一个
range(x,y)创建x到y-1的数组
迭代:
enumerate(L)给L创建索引
L =[‘Adam‘,‘Lisa‘,‘Bart‘,‘Paul‘]
for index,name in enumerate(L):
print index,‘-‘,name
zip(x,y)将x,y合并为一个list
L =[‘Adam‘,‘Lisa‘,‘Bart‘,‘Paul‘]
for index, name in zip(range(1,len(L)+1),L):
print index,‘-‘, name
迭代dict的value:
dict.values()和dict.itervalues()都能得到dict的values值
dict.items()和dict.iteritems()都能得到dict的键值
相对而言使用itervalues()和iteritems()
d ={‘Adam‘:95,‘Lisa‘:85,‘Bart‘:59,‘Paul‘:74}
sum =0.0
for k, v in d.items():
sum = sum + v
print k,‘:‘,v
print‘average‘,‘:‘,sum/4
生成列表:
print[x*(x+1)for x in range(1,100,2)]
复杂表达式:
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>‘
字符串可以通过%进行格式化,用指定的参数代替%s,字符串的join()方法可以将一个list拼接成一个字符串
条件过滤:
def toUppers(L):
return[x.upper()for x in L if isinstance(x,str)]
print toUppers([‘Hello‘,‘world‘,101])
isintance(x,str)判断x是否是字符串
多层表达式:
利用 3 层for循环的列表生成式,找出对称的 3 位数。例如,121 就是对称数,因为从右到左倒过来还是 121。
print[m*100+n*10+x for m in range(1,10)for n in range(10)for x in range(10)if m==x]
Python入门
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。