python基础学习
来源:互联网 发布:xp linux双系统引导 编辑:程序博客网 时间:2024/05/21 09:56
和lua有很多相似之处, 这里记录一些要注意的地方:
脚本文件:
#!/usr/bin/env python
第一行加上这个,就可以如shell脚本一样运行;
import mathmath.sqrt(12) from math import sqrtsqrt(12)
字符串自动拼接:
'helo' ' world' ⇒ "hello world"
数字转换为string:
// 下面不能忽略+号a=10print "he " + `a`print "he " + repr(a)print "he " + str(a)
unicode
print u"hello world"
原始字符串,即忽略转义符’\’的意识:
print r"hello \n world"
==> “hello \n world”
数组
数组和lua,C类似, 但有一个负索引的特性, 即从末尾开始索引,如
str="abc"str[-1] = 'c'str[0]='a'
数组特性和matlab类似的功能:
v = [1,2,3,4,5]v[1] => 2v[1:3] => [2,3]v[::2] => [1,3,5] #即从0索引开始以2为步长, 一般没有底二个':'时就是默认1为步长v[3:] ==>[4,5] # 到最后
字符串或数组与整数相乘
str="he"str*5 ==> "hehehehehe"#空字符str=[None]str*5=[None,None,None,None,None]#类似a=' ', a*5也是扩增字符串
下面是一个输出以方框包围打印字符串的代码:
#!/usr/bin/env pythons = raw_input("input:")scrn_w = 80s_w=len(s)box_w=s_w+6s_margin=(box_w-s_w-2)/2l_margin = (scrn_w-box_w)//2printprint ' '*l_margin + '+' + '-'*(box_w-2) + '+'print ' '*l_margin + '|' + ' '*(box_w-2) + '|'print ' '*l_margin + '|' + ' '*s_margin + s + ' '*s_margin + '|'print ' '*l_margin + '|' + ' '*(box_w-2) + '|'print ' '*l_margin + '+' + '-'*(box_w-2) + '+'
输出结果如下:
控制语句
注: 语句块是通过在代码前放缩进语句来创建的, 没有lua 中的end 也没有c中的{}来表识,所以格式是非常重要的
假: false None 0 ” () [] {} 都代表假
比较: > ,< ,>=,!= ..和C一样, 特殊的是:
x is y; x is not y;
代表x与y是否同一个对象;
x in y; x not in y
指x是否在容器y中(如数组)
运算符的连接:0<x<100
x=[1,2,3]y=[1,2,3]x==y ⇒ truex is y ⇒ falseassert 0<a<100 #断言
for
for v in str: .....#或者for i in range(len(str)): ...#或者d = {'a':1,'b':2}for k,v in d.items(): print k,vprint "end"
break; contine; 的使用都存在
循环语句中的else, 用于for 中,如果for 不是由break打断的, 则执行, 如果for中调用了break则不执行esle:
d = {'a':1,'b':2}for k,v in d.items(): if v==3: print "break" breakelse: print "break for"
上面的输出:break for
函数
用def来定义函数
def he(v): 'defined by XXX' assert v > 0 re = [0,1] for i in range(v-2): re.append(re[i]+re[i+1]) return re #调用函数print he(10) #⇒ [0,1,1,2,3...]
读取函数中的说明字符:
he.__doc__
内建help命令:help he
参数收集功能:
def he(a=1,*v): 'a=1 是默认参数' print a,vhe(10,1,2,3) #⇒ 10 (1, 2, 3) 即*v将剩余的参数都收集到了一个元组中;
map/lambda/filter
map(function,list) // 将list中的元素全部作为function的参数输入
结合lambda可以得到一次性的命令:map(lambda x:x**2+3, list)
filter(lambda x:x>4,lsit)
过滤得到list中满足x>4的元素
- Python学习----Python基础
- Python基础学习-Django基础
- Python学习笔记-Python基础
- Python学习笔记--Python基础
- 【Python】python基础学习笔记
- 学习Python基础
- 学习Python基础
- python基础学习
- python基础学习
- Python基础学习笔记
- Python基础语法学习
- Python基础学习
- Python学习----基础篇
- Python基础学习_1
- python基础学习
- python学习--基础篇
- python基础学习
- python基础学习
- 在Linux中让echo命令显示带颜色的字
- 求内存利用情况
- Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'解决
- 博客专栏第一篇文章——我眼里的DBA
- 老公最近吃某种药,吃完了就一直排气。这天,他们一行人去工地检查,排着队爬一个高塔的时候,老公没忍住排了一长串气,紧跟在他后面的人脸都绿了,忍不住说:“你这是要起飞呀!”
- python基础学习
- oracle user_users,dba_users,all_users
- 当在ecplise导入一个工程,tomcat识别不了导致无法add的时候可以这样做
- 时间按格式转字符串
- 排序、查找
- tableView下拉放大头部视图
- oracle DBLink的使用
- Android中对Handle机制的理解
- Giraph调试尝试