核心语言学无编程基础入门Python(第一章)

基本是私人笔记。编程基础0,计算机语言学、语料库语言学和自己就读的专业联系很少。另外本系列已经完结了,一共是六章。

假设已经安装好了Python。听说Python是有2.x和3.x的区别的,但是我的专业很落后,我选择了2.x。并且听说Python在Mac机上是预装好了的,但是我还是很落后,家里只有PC机。

但是最起码的理智我还是有的。【脚本最好单独存成一个.py文件】,而不是进入Python之后,在内存里面一行一行代码然后回车。

运行一个脚本的方法是在命令行里写 python 1.py 然后回车(假设存的脚本文件叫 1.py)


1 和Python好好谈一谈(print)

既然没有编程基础,最基本、最想入手的事情就是【告诉Python一件事,然后让Python马上把这件事复述一遍】,要用到print这个命令。基本的用法就是

[code language=”python”]
print 【某个东西】
[/code]

(请尝试之前先把脚本存成1.py,然后在命令行里使用python 1.py调用)

这里说的「某个东西」其实有蛮多种类的,不过现在这个阶段也不是太重要,现在只要记住可以print的对象可以是【字串/string(某个单词?)】和【数字/number(可以加减乘除?)】就好。

[code language=”python”]
print "Python is easy"
# => Python is easy
[/code]

[code language=”python”]
print 1
# => 1
[/code]

有两个点要千万记住,第一个是字串要用引号框起来(单引号双引号倒无所谓,但你至少要用一对),第二个是看上去是数字的东西当然也可能是字串,但是你print的时候至少要告诉Python,我要的是字串的1,而不是数字的1,比如下面这一行。

[code language=”python”]
print "1"
# => 1
[/code]

估计有人嫌烦了,心想为什么一定要区分字串和数字呢。那是因为Python在运算的时候处理字串(string)和数字(number)是不一样的:两个字串加在一起会变成一个长的字串,两个数字加在一起结果要问小学数学老师。

[code language=”python”]
print "1" + "1"
# => 11
[/code]

[code language=”python”]
print "1" + "1"
# => 2
[/code]

具体除了+以外还允许什么运算方式请自己搜其他的教程…


2 Python你帮我省省心啊(=)

print毕竟还是蛮蠢的,你告诉它什么,它马上就做什么。有些时候我【希望Python能先记住一些事情】,我需要的时候再让它告诉我。这个时候就要用到=。而且我得找个地方让Python把某件事情记下来,找的地方要写在=前面,用法如下

[code language=”python”]
a="so easy"
[/code]

这里我就把so easy这个字串(其实是”so easy”)存进a这个变量里了,这个过程被称为【赋值】(以后这个词估计会经常听到)。变量的名字(比如这里的a)是大家随便选的,完全看个人的格调,只要和Python系统已经分配的一些不起冲突就行了(实际上因为个人品味千差万别,起冲突的可能性真得很低)。

不过,光是存下一个变量(赋值),系统也没什么直接的反馈,如果想确认自己存了什么,还是要用前面说过的print。

[code language=”python”]
a="so easy"
print a
# => so easy
[/code]

(再说一次,尝试之前先把脚本存成1.py,然后在命令行里使用python 1.py调用)

用= 进行赋值的时候,也是能进行运算的,这样就能省下 print 这一行不少的篇幅了。比如上面提到: print “1” + “1” 的结果是 11(其实是”11″),我们也能换个法子做这个运算

[code language=”python”]
# 脚本1:
a="1"
b="1"
c=a+b
print c
# => 11
[/code]

[code language=”python”]
# 脚本2:
a="Python "
b="so "
c="easy"
d=a+b+c
print d
# => Python so easy
[/code]

注意脚本2里面a和b我在后面都加了一个空格哦,否则print出来的东西是三个词直接贴在一起。当然加空格这种工作也可以放在print里来完成,主要还是看气质。

[code language=”python”]
# 脚本3:
a="Python"
b="so"
c="easy"
print a+" "+b+" "+c
# => Python so easy
[/code]

对了,=也能帮着让1这种东西在数字(number)和字串(string)之间互相转换一下:转成字串用str(),转成数字用int()。另:不是表达整数的字串但还是想转数字的话用float()。自己运行一下脚本4和脚本5,大概就懂了。

[code language=”python”]
# 脚本4:
a=2
b=str(a)
c="016"
print b+c
[/code]

[code language=”python”]
# 脚本5:
a="2"
b=int(a)
c=2014
print b+c
[/code]


小抄:print + = str(某数字) int(某字串),嗯?””是什么?

 

ynshen