今天晚上学习的内容是Python的一些基础函数及其应用。参考书籍——《Python计算域编程实践—多媒体方法》第二章。
主要函数有print def ord abs pickAFile makePicture show makeSound play
学习平台是书上推荐的JES(Jython environment for students)安装方法很简单,还有很多编译器Visual studio 也支持
JES中:
print 以文本的形式显示表达式的值
def 定义函数及其输入变量,def不是一个函数,它是一个命令 就像print一样,def用于定义一个新的函数,不过def之后还需跟上特定的内容。一定记得def行尾的分号:
ord 将输入的字符值以ASCII数字形式输出比如输入“A”,及返回65 ,输入“a”,及返回97.单词原型为ordinal
abs 不想解释这个
pickAFile 打开文件的函数,并以字符串的形式返回其完整的文件名
makePicture 接受路径作为输入,读入文件并基于文件内容构造图片,返回新构造的图片对象
show 显示作为输入传入的图片,不会回任何东西
makeSound 接受路径名作为输入,读入文件并基于文件内容构造声音,返回新构造的声音对象
play 接受声音对象并播放它,不返回任何东西。
值得注意的是,比如pickAFile等函数式JES开发的,其他编译器不支持。
在程序框中输入程序点击loading program,再在命令行中调用定义的改函数名,比如:
def pickAndShow():
myFile = pickAFile()
myPict = makePicture(myFile)
show(myPict)
表示显示一副图片。
def pickAndPlay():
myFile = pickAFile()
mySound = makeSound(myFile)
play(mySound)
表示播放声音。
同样值得注意的是:
JES不支持绝对路径中的中文文件夹!
比如:
myFile = r"E:\实验图片\lena.jpg"
>>> print myFile
E:\þG\lena.jpg
中文文件夹会出现乱码。
Python不需要制定返回值类型,没有返回值就返回None
print "hello world"和print 'hello world'都可以输出结果。
def命令可以有返回,但不必声明,比如:
def hello():
print 'hello python!'