Python2.5/2.6实用教程 入门基础篇


Posted in Python onNovember 29, 2009

起步走

#! /usr/bin/python a=2 
b=3 
c="test" 
c=a+b 
print "execution result: %i"%c

知识点

Python是动态语言,变量不须预先声明.
打印语句采用C风格
字符串和数字
但有趣的是,在javascript里我们会理想当然的将字符串和数字连接,因为是动态语言嘛.但在Python里有点诡异,如下:

#! /usr/bin/python a=2 
b="test" 
c=a+b

运行这行程序会出错,提示你字符串和数字不能连接,于是只好用内置函数进行转换

#! /usr/bin/python a=2 
b="test" 
c=str(a)+b 
d="1111" 
e=a+int(d) 
#How to print multiply values 
print "c is %s,e is %i" % (c,e)

知识点:

用int和str函数将字符串和数字进行转换
打印以#开头,而不是习惯的//
打印多个参数的方式
国际化
写腻了英文注释,我们要用中文!

#! /usr/bin/python
# -*- coding: utf8 -*-

print "上帝重返人间:马拉多纳出任阿根廷国家足球队主帅."
知识点:

加上字符集即可使用中文
列表
列表类似Javascript的数组,方便易用

#! /usr/bin/python 
# -*- coding: utf8 -*- 
#定义元组 
word=['a','b','c','d','e','f','g'] 
#如何通过索引访问元组里的元素 
a=word[2] 
print "a is: "+a 
b=word[1:3] 
print "b is: " 
print b # index 1 and 2 elements of word. 
c=word[:2] 
print "c is: " 
print c # index 0 and 1 elements of word. 
d=word[0:] 
print "d is: " 
print d # All elements of word. 
#元组可以合并 
e=word[:2]+word[2:] 
print "e is: " 
print e # All elements of word. 
f=word[-1] 
print "f is: " 
print f # The last elements of word. 
g=word[-4:-2] 
print "g is: " 
print g # index 3 and 4 elements of word. 
h=word[-2:] 
print "h is: " 
print h # The last two elements. 
i=word[:-2] 
print "i is: " 
print i # Everything except the last two characters 
l=len(word) 
print "Length of word is: "+ str(l) 
print "Adds new element" 
word.append('h') 
print word 
#删除元素 
del word[0] 
print word 
del word[1:3] 
print word

知识点:

列表长度是动态的,可任意添加删除元素.
用索引可以很方便访问元素,甚至返回一个子列表
更多方法请参考Python的文档
字典

#! /usr/bin/python x={'a':'aaa','b':'bbb','c':12} 
print x['a'] 
print x['b'] 
print x['c'] 
for key in x: 
print "Key is %s and value is %s",(key,x[key]) 
keys=x.items(); 
print keys[0] 
keys[0]='ddd' 
print keys[0]

知识点:

将他当Java的Map来用即可.
字符串
比起C/C++,Python处理字符串的方式实在太让人感动了.把字符串当列表来用吧.

word="abcdefg" 
a=word[2] 
print "a is: "+a 
b=word[1:3] 
print "b is: "+b # index 1 and 2 elements of word. 
c=word[:2] 
print "c is: "+c # index 0 and 1 elements of word. 
d=word[0:] 
print "d is: "+d # All elements of word. 
e=word[:2]+word[2:] 
print "e is: "+e # All elements of word. 
f=word[-1] 
print "f is: "+f # The last elements of word. 
g=word[-4:-2] 
print "g is: "+g # index 3 and 4 elements of word. 
h=word[-2:] 
print "h is: "+h # The last two elements. 
i=word[:-2] 
print "i is: "+i # Everything except the last two characters 
l=len(word) 
print "Length of word is: "+ str(l)

不过要注意Asc和Unicode字符串的区别:
#! /usr/bin/python 
# -*- coding: utf8 -*- s=raw_input("输入你的中文名,按回车继续"); 
print "你的名字是 : " +s; 
l=len(s) 
print "你中文名字的长度是:"+str(l); 
a=unicode(s,"utf8") 
l=len(a) 
print "对不起,刚才计算错误.我们应该用utf8来计算中文字符串的长度, \ 
你名字的长度应该是:"+str(l);

知识点:

用unicode函数进行转码
条件和循环语句

#! /usr/bin/python 
x=int(raw_input("Please enter an integer:")) 
if x<0: 
x=0 
print "Negative changed to zero" elif x==0: 
print "Zero" 
else: 
print "More" 

# Loops List 
a = ['cat', 'window', 'defenestrate'] 
for x in a: 
print x, len(x)

知识点:

条件和循环语句
如何得到控制台输入
函数

#! /usr/bin/python 
# -*- coding: utf8 -*- def sum(a,b): 
return a+b 

func = sum 
r = func(5,6) 
print r 
# 提供默认值 
def add(a,b=2): 
return a+b 
r=add(1) 
print r 
r=add(1,5) 
print r

一个好用的函数
#! /usr/bin/python 
# -*- coding: utf8 -*- # The range() function 
a =range(5,10) 
print a 
a = range(-2,-7) 
print a 
a = range(-7,-2) 
print a 
a = range(-2,-11,-3) # The 3rd parameter stands for step 
print a

知识点:

Python 不用{}来控制程序结构,他强迫你用缩进来写程序,使代码清晰.
定义函数方便简单
方便好用的range函数
异常处理

#! /usr/bin/python 
s=raw_input("Input your age:") 
if s =="": 
raise Exception("Input must no be empty.") try: 
i=int(s) 
except ValueError: 
print "Could not convert data to an integer." 
except: 
print "Unknown exception!" 
else: # It is useful for code that must be executed if the try clause does not raise an exception 
print "You are %d" % i," years old" 
finally: # Clean up action 
print "Goodbye!"
Python 相关文章推荐
采用Psyco实现python执行速度提高到与编译语言一样的水平
Oct 11 Python
python 请求服务器的实现代码(http请求和https请求)
May 25 Python
python3实现字符串的全排列的方法(无重复字符)
Jul 07 Python
解决Python pandas plot输出图形中显示中文乱码问题
Dec 12 Python
Django实现跨域的2种方法
Jul 31 Python
numpy数组做图片拼接的实现(concatenate、vstack、hstack)
Nov 08 Python
Django 实现外键去除自动添加的后缀‘_id’
Nov 15 Python
Python tkinter模版代码实例
Feb 05 Python
将tf.batch_matmul替换成tf.matmul的实现
Jun 18 Python
解决keras使用cov1D函数的输入问题
Jun 29 Python
python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
Aug 04 Python
基于python实现百度语音识别和图灵对话
Nov 02 Python
python 快速排序代码
Nov 23 #Python
python 文件和路径操作函数小结
Nov 23 #Python
Python+Django在windows下的开发环境配置图解
Nov 11 #Python
Python 开发Activex组件方法
Nov 08 #Python
Python 匹配任意字符(包括换行符)的正则表达式写法
Oct 29 #Python
python 中文字符串的处理实现代码
Oct 25 #Python
动态创建类实例代码
Oct 07 #Python
You might like
php下使用以下代码连接并测试
2008/04/09 PHP
php更改目录及子目录下所有的文件后缀的代码
2010/09/24 PHP
php自动加载方式集合
2016/04/04 PHP
php 解决扫描二维码下载跳转问题
2017/01/13 PHP
关于php 高并发解决的一点思路
2017/04/16 PHP
Javascript实现的类似Google的Div拖动效果代码
2011/08/09 Javascript
jqGrid日期格式的判断示例代码(开始日期与结束日期)
2013/11/08 Javascript
js操作输入框中选择内容兼容IE及其他主流浏览器
2014/04/22 Javascript
jQuery实现table隔行换色和鼠标经过变色的两种方法
2014/06/15 Javascript
jQuery动态星级评分效果实现方法
2015/08/06 Javascript
node.js下LDAP查询实例分享
2015/09/30 Javascript
基于JavaScript实现前端文件的断点续传
2016/10/17 Javascript
深入理解jQuery.data() 的实现方式
2016/11/30 Javascript
JavaScript中localStorage对象存储方式实例分析
2017/01/12 Javascript
javaScript+turn.js实现图书翻页效果实例代码
2017/02/16 Javascript
AngularJS 实现点击按钮获取验证码功能实例代码
2017/07/13 Javascript
仿淘宝JSsearch搜索下拉深度用法
2018/01/15 Javascript
使用Vue开发一个实时性时间转换指令
2018/01/17 Javascript
你或许不知道的一些npm实用技巧
2019/07/04 Javascript
nodejs+express最简易的连接数据库的方法
2020/12/23 NodeJs
[03:38]2014DOTA2西雅图国际邀请赛 VG战队巡礼
2014/07/07 DOTA
python在命令行下使用google翻译(带语音)
2014/01/16 Python
在ironpython中利用装饰器执行SQL操作的例子
2015/05/02 Python
带你了解python装饰器
2017/06/15 Python
pandas 数据实现行间计算的方法
2018/06/08 Python
Tensorflow:转置函数 transpose的使用详解
2020/02/11 Python
Python函数必须先定义,后调用说明(函数调用函数例外)
2020/06/02 Python
CSS3 animation实现逐帧动画效果
2016/06/02 HTML / CSS
学生自我鉴定范文
2013/10/04 职场文书
集团公司党的群众路线教育实践活动工作总结
2014/03/03 职场文书
读书月活动方案
2014/05/22 职场文书
课外访万家心得体会
2014/09/03 职场文书
大学毕业晚会开场白
2015/05/29 职场文书
公务员廉洁从政心得体会
2016/01/19 职场文书
关于Vue Router的10条高级技巧总结
2021/05/06 Vue.js
springboot项目以jar包运行的操作方法
2021/06/30 Java/Android