变量
print("-------------输出语句-------------");
message="Hello Python world";
print(message);
print("-------------首字母大写-------------");
name="ada lovelace";
print(name.title());
print("-------------大小写-------------");
print(name.upper());
print(name.lower());
print("-------------拼接字符串-------------");
first_name = "ada"
last_name = "lovelace"
full_name = first_name + " " + last_name
print(full_name);
print("-------------添加空白-------------");
print("\tPython");
print("Languages:\nPython\nC\nJavaScript");
print("-------------删除空白-------------");
print("Hello ".rstrip());
print("-------------运算-------------");
print(2+3);
print(3-2);
print(2*3);
print(3/2);
print(3**2);
print(3**3);
print(10**6);
print(0.1+0.1);
print(0.2+0.2);
print("------------注释-------------");
# 测试注释
-------------输出语句-------------
Hello Python world
-------------首字母大写-------------
Ada Lovelace
-------------大小写-------------
ADA LOVELACE
ada lovelace
-------------拼接字符串-------------
ada lovelace
-------------添加空白-------------
Python
Languages:
Python
C
JavaScript
-------------删除空白-------------
Hello
-------------运算-------------
5
1
6
1.5
9
27
1000000
0.2
0.4
------------注释-------------
Process finished with exit code 0
- 运行文件hello_world.py时,末尾的.py指出这是一个Python程序,因此编辑器将使用Python解释器来运行它
- 变量名只能包含字母、数字和下划线。变量名可以字母或下划线打头,但不能以数字打头,例如,可将变量命名为message_1,但不能将其命名为1_message。
- 变量名不能包含空格,但可使用下划线来分隔其中的单词。例如,变量名greeting_message可行,但变量名greeting message会引发错误。
- 不要将Python关键字和函数名用作变量名,即不要使用Python保留用于特殊用途的单词,
- 变量名应既简短又具有描述性。
- 慎用小写字母l和大写字母O,因为它们可能被人错看成数字1和0
- 在Python中,注释用井号( # )标识。井号后面的内容都会被Python解释器忽略
列表
print("-------------列表-------------");
bicycles = ['trek', 'cannondale', 'redline', 'specialized'];
print(bicycles);
print("-------------访问列表元素-------------");
print(bicycles[0]);
print("-------------修改列表元素-------------");
bicycles[0]='ducati';
print(bicycles);
print("-------------添加列表元素-------------");
bicycles.append('test');
print(bicycles);
print("-------------插入列表元素-------------");
bicycles.insert(0,'test2');
print(bicycles);
print("-------------删除列表元素-------------");
del bicycles[0];
print(bicycles);
print(bicycles.pop());
print(bicycles);
print("-------------排序列表元素-------------");
bicycles.sort();
print(bicycles);
print("-------------倒叙打印列表元素-------------");
print(bicycles.reverse());
print("-------------列表长度-------------");
print(len(bicycles));
print("-------------数值列表------------");
numbers=list(range(1,6));
print(numbers);
-------------列表-------------
['trek', 'cannondale', 'redline', 'specialized']
-------------访问列表元素-------------
trek
-------------修改列表元素-------------
['ducati', 'cannondale', 'redline', 'specialized']
-------------添加列表元素-------------
['ducati', 'cannondale', 'redline', 'specialized', 'test']
-------------插入列表元素-------------
['test2', 'ducati', 'cannondale', 'redline', 'specialized', 'test']
-------------删除列表元素-------------
['ducati', 'cannondale', 'redline', 'specialized', 'test']
test
['ducati', 'cannondale', 'redline', 'specialized']
Process finished with exit code 0
- 列表由一系列按特定顺序排列的元素组成
- 列表是有序集合,因此要访问列表的任何元素,只需将该元素的位置或索引告诉Python即可
- Python方法 sort() 让你能够较为轻松地对列表进行排序。
- 要保留列表元素原来的排列顺序,同时以特定的顺序呈现它们,可使用函数 sorted() 。函数sorted() 让你能够按特定顺序显示列表元素,同时不影响它们在列表中的原始排列顺序。
- 要反转列表元素的排列顺序,可使用方法 reverse()
- 使用函数 len() 可快速获悉列表的长度
- Python根据缩进来判断代码行与前一个代码行的关系。
选择结构
print("-------------检查是否相等-------------");
car='bmw';
print(car=='bmw');
print(car=='audi');
print(car=='BMW');
print(car.upper()=='BMW');
age=18;
print(age==18);
print(age>=18);
print(age<=18);
print(age>18);
print(age<18);
age_0 = 22;
age_1 = 18;
print(age_0 >= 21 and age_1 >= 21);
print(age_0 >= 21 or age_1 >= 21);
print("-------------if语句-------------");
age = 19
if age >= 18:
print("You are old enough to vote!");
age=17
if age>=18:
print("You are old enough to vote!");
else:
print("Sorry you are too young");
age = 12
if age < 4:
print("Your admission cost is $0.")
elif age < 18:
print("Your admission cost is $5.")
else:
print("Your admission cost is $10.")
age = 12
if age < 4:
price = 0
elif age < 18:
price = 5
elif age < 65:
price = 10
elif age >= 65:
price = 5
print("Your admission cost is $" + str(price) + ".")
-------------检查是否相等-------------
True
False
False
True
True
True
True
False
False
False
True
-------------if语句-------------
You are old enough to vote!
Sorry you are too young
Your admission cost is $5.
Your admission cost is $5.
Process finished with exit code 0
- 在Python中检查是否相等时区分大小写
- 要判断两个值是否不等,可结合使用惊叹号和等号( != )
- 要检查是否两个条件都为 True ,可使用关键字 and 将两个条件测试合而为一
- 关键字 or 也能够让你检查多个条件,但只要至少有一个条件满足,就能通过整个测试。
- 在 if 语句中,缩进的作用与 for 循环中相同。如果测试通过了,将执行 if 语句后面所有缩进的代码行,否则将忽略它们。
- 经常需要检查超过两个的情形,为此可使用Python提供的 if-elif-else 结构
字典
print("-------------一个简单的字典-------------");
alien_0 = {'color': 'green', 'points': 5}
print(alien_0['color'])
print(alien_0['points'])
print("-------------访问字典中的值------------");
alien_0={'color':'green'};
print(alien_0['color']);
print("-------------先创建一个空字典------------");
alien_0 = {}
alien_0['color'] = 'green'
alien_0['points'] = 5
print(alien_0)
print("-------------修改字典中的值------------");
alien_0={'color':'green'}
print("The alien is " + alien_0['color'] + ".")
alien_0['color'] = 'yellow'
print("The alien is now " + alien_0['color'] + ".")
print("-------------删除键值对------------");
alien_0 = {'color': 'green', 'points': 5}
print(alien_0);
del alien_0['points']
print(alien_0);
print("-------------遍历字典------------");
user_0 = {
'username': 'efermi',
'first': 'enrico',
'last': 'fermi',
}
for key,value in user_0.items():
print("\nKey:"+key)
print("Value:"+value)
-------------一个简单的字典-------------
green
5
-------------访问字典中的值------------
green
-------------先创建一个空字典------------
{'color': 'green', 'points': 5}
-------------修改字典中的值------------
The alien is green.
The alien is now yellow.
-------------删除键值对------------
{'color': 'green', 'points': 5}
{'color': 'green'}
-------------遍历字典------------
Key:username
Value:efermi
Key:first
Value:enrico
Key:last
Value:fermi
Process finished with exit code 0
- 字典是一系列键 — 值对。每个键都与一个值相关联,你可以使用键来访问与之相关联的值。与键相关联的值可以是数字、字符串、列表乃至字典。事实上,可将任何Python对象用作字典中的值。
- 要获取与键相关联的值,可依次指定字典名和放在方括号内的键
- 字典是一种动态结构,可随时在其中添加键 — 值对。要添加键 — 值对,可依次指定字典名、用方括号括起的键和相关联的值。
- 对于字典中不再需要的信息,可使用 del 语句将相应的键 — 值对彻底删除。
- 字典存储的是一个对象(游戏中的一个外星人)的多种信息,但你也可以使用字典来存储众多对象的同一种信息。
循环结构
print("-------------函数input()的工作原理-------------");
message = input("Tell me something, and I will repeat it back to you: ")
print(message)
print("-------------编写清晰的程序-------------");
name=input("Please enter your name:");
print("Hello,"+name+"!");
print("-------------求模运算符-------------");
print(4%3);
print("-------------while循环-------------");
current_number = 1
while current_number <= 5:
print(current_number)
current_number += 1
print("-------------让用户选择何时退出-------------");
prompt = "\nTell me something, and I will repeat it back to you:"
prompt += "\nEnter 'quit' to end the program. "
message = ""
while message != 'quit':
message = input(prompt)
print(message)
print("-------------break语句-------------");
prompt = "\nPlease enter the name of a city you have visited:"
prompt += "\n(Enter 'quit' when you are finished.) "
while True:
city = input(prompt)
if city == 'quit':
break
else:
print("I'd love to go to " + city.title() + "!")
-------------函数input()的工作原理-------------
Tell me something, and I will repeat it back to you: Hello World
Hello World
-------------编写清晰的程序-------------
Please enter your name:Alice
Hello,Alice!
-------------求模运算符-------------
1
-------------while循环-------------
1
2
3
4
5
-------------让用户选择何时退出-------------
Tell me something, and I will repeat it back to you:
Enter 'quit' to end the program. Hello World
Hello World
Tell me something, and I will repeat it back to you:
Enter 'quit' to end the program. quit
quit
-------------break语句-------------
Please enter the name of a city you have visited:
(Enter 'quit' when you are finished.) ShangHai
I'd love to go to Shanghai!
Please enter the name of a city you have visited:
(Enter 'quit' when you are finished.) quit
Process finished with exit code 0
- 函数 input() 让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中,以方便你使用。
- 函数 input() 接受一个参数:即要向用户显示的提示或说明,让用户知道该如何做。
- 每当你使用函数 input() 时,都应指定清晰而易于明白的提示,准确地指出你希望用户提供什么样的信息——指出用户该输入任何信息的提示都行
- 使用函数 input() 时,Python将用户输入解读为字符串
函数
print("-------------函数-------------");
def greet_user():
print("Hello World")
print("-------------区分线-------------");
greet_user();
print("-------------调用函数-------------");
def tpl_sum( T ): #定义函数tpl_sum()
result = 0 #定义result的初始值为0
for i in T: #遍历T中的每一个元素i
result += i #计算各个元素i的和
return result #函数tpl_sum()最终返回计算的和
print("(1,2,3,4)元组中元素的和为:",tpl_sum((1,2, 3,4))) #使用函数tpl_sum()计算元组内元素的和
print("[3,4,5,6]列表中元素的和为:",tpl_sum([3,4, 5,6])) #使用函数tpl_sum()计算列表内元素的和
print("[2.7,2,5.8]列表中元素的和为:",tpl_sum([2.7, 2,5.8])) #使用函数tpl_sum()计算列表内元素的和
print("[1,2,2.4]列表中元素的和为:",tpl_sum([1,2,2.4]))
#使用函数tpl_sum()计算列表内元素的和
-------------函数-------------
-------------区分线-------------
Hello World
-------------调用函数-------------
(1,2,3,4)元组中元素的和为: 10
[3,4,5,6]列表中元素的和为: 18
[2.7,2,5.8]列表中元素的和为: 10.5
[1,2,2.4]列表中元素的和为: 5.4
Process finished with exit code 0
- 这个示例演示了最简单的函数结构
- 调用函数就是使用函数,在 Python 程序中,当定义一个函数后,就相当于给了函数一个名称,指定了函数里包含的参数和代码块结构。完成这个函数的基本结构定义工作后,就可以通过调用的方式来执行这个函数,也就是使用这个函数。
- 在 Python 程序中,使用关键字 def 可以定义一个函数,定义函数的语法格式如下所示。
def<函数名>(参数列表):
<函数语句>
return<返回值>
在上述格式中,参数列表和返回值不是必需的,return 后也可以不跟返回值,甚至连 return 也没有。如果 return 后没有返回值,并且没有 return 语句,这样的函数都会返回 None 值。有些函数可能既不需要传递参数,也没有返回值。
注意:当函数没有参数时,包含参数的圆括号也必须写上,圆括号后也必须有“:”。
在 Python 程序中,完整的函数是由函数名、参数以及函数实现语句(函数体)组成的。在函数声明中,也要使用缩进以表示语句属于函数体。如果函数有返回值,那么需要在函数中使用 return 语句返回计算结果。
根据前面的学习,可以总结出定义 Python 函数的语法规则,具体说明如下所示。
- 函数代码块以 def 关键字开头,后接函数标识符名称和圆括号()。
- 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
- 函数的第一行语句可以选择性地使用文档字符串——用于存放函数说明。
- 函数内容以冒号起始,并且缩进。
- return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的 return 相当于返回 None。
类
print("-------------类-------------");
class MyClass: #定义类MyClass
"这是一个类."
myclass = MyClass() #实例化类MyClass
print('输出类的说明:') #显示文本信息
print(myclass.__doc__) #显示属性值
print('显示类帮助信息:')
help(myclass)
print("-------------类对象-------------");
class MyClass: #定义类MyClass
"""一个简单的类实例"""
i = 12345 #设置变量i的初始值
def f(self): #定义类方法f()
return 'hello world' #显示文本
x = MyClass() #实例化类
#下面两行代码分别访问类的属性和方法
print("类MyClass中的属性i为:", x.i)
print("类MyClass中的方法f输出为:", x.f())
print("-------------构造方法-------------");
class Dog():
"""小狗狗"""
def __init__(self, name, age):
"""初始化属性name和age."""
self.name = name
self.age = age
def wang(self):
"""模拟狗狗汪汪叫."""
print(self.name.title() + " 汪汪")
def shen(self):
"""模拟狗狗伸舌头."""
print(self.name.title() + " 伸舌头")
print("-------------调用方法-------------");
def diao(x,y):
return (abs(x),abs(y))
class Ant:
def __init__(self,x=0,y=0):
self.x = x
self.y = y
self.d_point()
def yi(self,x,y):
x,y = diao(x,y)
self.e_point(x,y)
self.d_point()
def e_point(self,x,y):
self.x += x
self.y += y
def d_point(self):
print("亲,当前的位置是:(%d,%d)" % (self.x,self.y))
ant_a = Ant()
ant_a.yi(2,7)
ant_a.yi(-5,6)
-------------类-------------
输出类的说明:
这是一个类.
显示类帮助信息:
Help on MyClass in module __main__ object:
class MyClass(builtins.object)
| 这是一个类.
|
| Data descriptors defined here:
|
| __dict__
| dictionary for instance variables (if defined)
|
| __weakref__
| list of weak references to the object (if defined)
-------------类对象-------------
类MyClass中的属性i为: 12345
类MyClass中的方法f输出为: hello world
-------------构造方法-------------
-------------调用方法-------------
亲,当前的位置是:(0,0)
亲,当前的位置是:(2,7)
亲,当前的位置是:(7,13)
Process finished with exit code 0
- 把具有相同属性和方法的对象归为一个类
- 在 Python 程序中,类只有实例化后才能够使用。类的实例化与函数调用类似,只要使用类名加小括号的形式就可以实例化一个类。
- 方法调用就是调用创建的方法,在 Python 程序中,类中的方法既可以调用本类中的方法,也可以调用全局函数来实现相关功能。