Python源程序可从官方网站下载,目前最新版本为3.3。
在Python中有以下要点:
1、以行为执行语句,而不用类似C/C++中以分号区分语句。#作为注释标识符。
2、采用缩进方式(每次缩进一般采用4个空格表示一层)表明语句块,语句块开始用:标识,例如:
while True:
i = 0
if i < k:
break
3、变量不用指定类型,同时,变量只是对象的引用(也即因为如此,所以无需类型标明),例如:
x = 3 #这样即表明x为3的引用,即取得3在内存中的地址,此时x为int型
x = "I am Aka!" #这时,x转为str(即字符串)型。
同理,在定义函数时,也无须指定形参的类型,包括返回值的类型等,由具体使用时确定。另外,在python中,函数可以返回一个元组、列表等(为数据集合的一种形式)。
4、str是作为一种集合处理的。对于str我们可以用标号访问其中成员,例如:
s = "I am Aka!"
则 s[0] == 'I' #在python中str的标号从0开始。
另外一种,作为str,也可以从最后面一个字符开始,标号为-1,例如上述s,s[-1] == '!'
在新版的Pyhton中,输出采用函数方式,即 print(...)。例如,可以print("Hello world!")
下面给出本人所写的几个例程:
1、while使用:
#while example:
x = 1
y = 10
z = 1
while True:
print ("The",z,"time: x =",x)
z += 1
if x == y:
print ("Now x = y,break while!")
break
else:
x += 1
2、for循环使用举例:
#for example:
x = (1, 2, 3, 4, 5)
for y in x:
print ("y =",y)
if y > 3:
print ("y > 3,break for!")
break
3、try(对异常处理)使用举例:
#try example:
s = input("Enter an integer:\n")
try:
i = int(s)
print ("Valid integer entered:",i)
except ValueError as err:
print (err)
4、操作符使用举例:
#operator example:
#x += y 与 x = x + y并不完全一致(但显示结果相同)
#前者更高效,因为python采用对象引用绑定,在x+=y中只查询一次绑定情况
x = 3
x += 5
print (x)
y = [1, 2, "hello", "today"]
print ("y =",y)
#Error: y += 5,must to be: y += [5]
y += [5]
print ("After+=,y =",y)
#y += "Aka",it will be showed y += ['A', 'k', 'a']
#y += "Aka"
#print ("y =",y) #print: y = [1, 2, 'hello', 'today', 5, 'A', 'k', 'a']
y += ["Aka"]
print ("y =",y)
5、文件包含举例(使用随机数):
import sys
import random
print (sys.argv)
while True:
x = random.randint(1, 10)
print ("x =",x)
if x == 2:
break
6、自定义数字显示方式举例:
#定义各个数字的显示字符方式:
n0 = ["****",
"* *",
"* *",
"* *",
"****"]
n1 = [" * ",
" ** ",
" * ",
" * ",
" ***"]
n2 = ["****",
" *",
"****",
"* ",
"****"]
n3 = ["****",
" *",
"****",
" *",
"****"]
n4 = ["* *",
"* *",
"****",
" *",
" *"]
n5 = ["****",
"* ",
"****",
" *",
"****"]
n6 = ["****",
"* ",
"****",
"* *",
"****"]
n7 = ["****",
" *",
" *",
" *",
" *"]
n8 = ["****",
"* *",
"****",
"* *",
"****"]
n9 = ["****",
"* *",
"****",
" *",
"****"]
#将10个数字组成新的列表
dn = [n0, n1, n2, n3, n4, n5, n6, n7, n8, n9]
try:
str_num = input("Enter a number:")
row = 0
#这里row < 5,系因为我们定义每个数字的显示方式(n1)共用了5个元素
while row < 5:
line = ""
column = 0
while column < len(str_num):
#number依次取得输入数值的每一位数字
number = int(str_num[column])
#digit每次循环取得number的自定义显示方式
digit = dn[number]
#line每次循环取得自定义显示方式的每个元素(字符串)
line += digit[row] + " "
column += 1
print (line)
row += 1
except ValueError as err:
print (err,"in",str_num)
7、使用random库随机数自动填充任意网格举例:
#任意网格填充随机数例程(用标准库random)
import random
def get_int(msg, minimum, default):
while True:
try:
line = input(msg)
if not line and default is not None:
return default
i = int(line)
if i < minimum:
print ("must be >=",minimum)
else:
return i
except ValueError as err:
print(err,"\n请输入一个正整数")
print("本程序帮你自动完成任意网格内随机整数的填充……")
rows = get_int("行数:", 1, None)
columns = get_int("列数:", 1, None)
minimum = get_int("minimum(or Enter for 0):", -1000000, 0)
default = 0
if default < minimum:
default = 2 * minimum
maximum = get_int("maximum(or Enter for" + str(default) + "):",
minimum, default)
row = 0
while row < rows:
line = ""
column = 0
while column < columns:
i = random.randint(minimum, maximum)
s = str(i)
while len(s) < 10:
s = " " + s
line += s
column += 1
print(line)
row += 1