Python初学

版本:3.8.0(与python2语法有区别)

变量定义

整数:

1
i = 5

字符串:

1
2
s = '''This is a multi-line string.
This is the second line.'''

诸如此类…


输入

1
a = input("请输入数据到a")

打印变量

打印字符常量:

1
print("hello world")

打印变量值:

1
print(a)

打印字符变量:

1
print(s)

混合类型打印示例:

1
print(a,s,"hello world")

尽管a,s,“hello world”三个变量间我们没有指定空格,但是python会自动给他加上空格

输出结果:

5 This is a multi-line string.

This is the second line. hello world


控制流语句

分支语句

1
2
3
4
5
6
7
8
9
10
11
12
13
14
number = 23
guess = int(raw_input('Enter an integer : '))

if guess == number:
print ('Congratulations, you guessed it.')
print ("(but you do not win any prizes!)")

elif guess < number:
print ('No, it is a little higher than that')

else:
print ('No, it is a little lower than that')

print ('Done')

while语句

1
2
3
4
5
i = 3
while i:
print(i)
i=i-1
print("done")

for in 循环

1
2
3
4
for i in range(1,5): # range(1,5):返回一个连续的整数数组,范围是从1到4
print(i)
else:
print("The for loop is over")

break/continue语句(用法一样)

1
2
3
4
5
6
7
for i in range(1,10):
print(i)
if i != 5:
continue
else:
print("five! break!")
break

函数

函数定义

1
2
3
def sayHello():
print ('Hello World!') # block belonging to the function
sayHello() # call the function

函数形参

1
2
3
4
5
6
7
8
9
10
11
12
def printMax(a, b):
if a > b:
print (a, 'is maximum')
else:
print (b, 'is maximum')

printMax(3, 4) # directly give literal values

x = 5
y = 7

printMax(x, y) # give variables as arguments

局部变量

1
2
3
4
5
6
7
8
def func(x):
print ('x is', x)
x = 2
print ('Changed local x to', x)

x = 50
func(x)
print ('x is still', x)

变量作用域 与c语言类似

注意函数被调用的次序

global语句(定义全局变量)

1
2
3
4
5
6
7
8
9
def func():
global x
print ('x is', x)
x = 2
print ('Changed local x to', x)

x = 50
func()
print ('Value of x is', x)

与c语言类似

默认参数值

1
2
3
4
5
def say(message, times = 1):
print message * times

say('Hello')
say('World', 5)

只有在形参表末尾的那些参数可以有默认参数值

关键参数(特性)

如果你的某个函数有许多参数,而你只想指定其中的一部分,那么你可以通过命名来为这些参 数赋值——这被称作 关键参数 ——我们使用名字(关键字)而不是位置(我们前面所一直使 用的方法)来给函数指定实参。

例:

1
2
func(3, 7)		# 常规用法
func(25, c=24) # 关键参数指定为c复制

完整例子:

1
2
3
4
5
6
def func(a, b=5, c=10):
print ('a is', a, 'and b is', b, 'and c is', c)

func(3, 7)
func(25, c=24)
func(c=50, a=100)

return 语句

1
2
3
4
5
6
7
def maximum(x, y):
if x > y:
return x
else:
return y

print (maximum(2, 3))

和c类似

DocStrings(特性)

Python有一个很奇妙的特性,称为 文档字符串 ,它通常被简称为 docstrings 。DocStrings是一个 重要的工具,由于它帮助你的程序文档更加简单易懂,你应该尽量使用它。你甚至可以在程序 运行的时候,从函数恢复文档字符串

简而言之:能打印函数里‘’‘ ’‘’ 三引号引起来的内容 使用方法是 函数名.__doc__

1
2
3
4
5
6
7
8
9
10
11
12
def printMax(x, y):
'''Prints the maximum of two numbers.
The two values must be integers.'''
x = int(x) # convert to integers, if possible
y = int(y)
if x > y:
print (x, 'is maximum')
else:
print (y, 'is maximum')

printMax(3, 5)
print (printMax.__doc__)

输出结果:

5 is maximum
Prints the maximum of two numbers.
The two values must be integers.