频道栏目
读书频道 > 数据库 > 其他综合 > Python数据分析与挖掘实战
2.2.2 基本命令
2015-12-11 15:09:27     我来说两句
收藏   我要投稿

本文所属图书 > Python数据分析与挖掘实战

本书共15章,分两篇:基础篇和实战篇。基础篇介绍了数据挖掘的基本原理,实战篇介绍了一个个真实案例,通过对案例深入浅出的剖析,使读者在不知不觉中通过案例实践获得数据挖掘项目经验,同时快速领悟看似难懂的  立即去当当网订购

(1)基本运算

认识Python的第一步,是可以把它当做一个方便的计算器来看待。读者可以打开Python,试着输入以下命令。

a = 2
a * 2
a ** 2

以上是Python几个基本的运算,第一个是赋值运算,第二是乘法,最后是一个是幂(即a2),这些基本上是编程语言通用的。不过Python支持多重赋值。

a, b, c = 2, 3, 4
这句命令相当于
a = 2
b = 3
c = 4

Python支持对字符串的灵活操作,如:

s = 'I like python'
s + ' very much' #将s与' very much'拼接,得到'I like python very much'
s.split(' ') #将s以空格分割,得到列表['I', 'like', 'python']

(2)判断与循环

显然判断和循环是所有编程语言的基本命令,Python的判断语句如下。

if 条件1:
     语句2
elif 条件3:
     语句4
else:
     语句5

需要特别指出的是,Python一般不用花括号{},也没有end语句,它是用缩进对齐作为语句的层次标记。同一层次的缩进量要一一对应,否则报错,如下面的语句是错误的。

if a==1:
   print a #缩进两个空格
else:
     print u'a不等于1' #缩进三个空格

不管是哪种语言,正确的缩进都是一个优雅的编程习惯。

Python的循环也相应地有for循环和while循环,while循环如下。

s,k = 0
while k < 101: #该循环过程就是求1+2+3+...+100
  k = k + 1
  s = s + k
print s
for循环如下。
s = 0
for k in range(101): #该循环过程也是求1+2+3+...+100
  s = s + k
print s

这里,我们看到了in和range语法,in是一个非常方便、而且非常直观的语法,用来判断一个元素是否在列表/元组中,range用来生成连续的序列,一般语法为range(a, b, c),表示以a为首项、c为公差且不超过b-1的等差数列,例如,

s = 0
if s in range(4):
    print u's在0, 1, 2, 3中'
if s not in range(1, 4, 1):
    print u's不在1, 2, 3中'

(3)函数

Python用def来自定义函数。
def add2(x):
  return x+2
print add2(1) #输出结果为3

这很普通,没什么特别的,但是与一般编程语言不同的是,Python的函数返回值可以是各种形式,比如返回列表,甚至返回多个值。

def add2(x = 0, y = 0): #定义函数,同时定义参数的默认值
  return [x+2, y+2] #返回值是一个列表
def add3(x, y):
  return x+3, y+3 #双重返回
a, b = add3(1,2) #此时a=4,b=5

有时候,像定义add2()这类简单的函数,用def来正式地写个命名、计算和返回显得有点麻烦了,Python支持用lambda对简单的功能定义“行内函数”,这有点像Matlab中的“匿名函数”,如下。

f = lambda x : x + 2 #定义函数f(x)=x+2
g = lambda x, y: x + y #定义函数g(x,y)=x+y

您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:2.2.1 运行方式
下一篇:2.2.3 数据结构
相关文章
图文推荐
排行
热门
最新书评
特别推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站