文章目录
- 一、Python入门 - 第一个Python程序
- 二、Python保留字符
- 三、Python 标识符
- 四、行、缩进、多行语句
- 五、Python 引号
- 六、Python注释
一、Python入门 - 第一个Python程序
所有 Python 文件将以 .py 为扩展名,我们首先可以创建一个hello.py的文件:
#!/usr/bin/python
print("Hello Python")
以Python3.*为例,通过执行如下命令即可运行如上程序:
python3 hello.py
二、Python保留字符
以下表格是Python中的保留字,所有 Python 的关键字只包含小写字母,且不能用作常量、变量:
第一列 | 第二列 | 第三列 |
---|---|---|
and | exec | not |
assert | finally | or |
break | for | pass |
class | from | |
continue | global | raise |
def | if | return |
del | import | try |
elif | in | while |
else | is | with |
except | lambda | yield |
三、Python 标识符
- 标识符:由字母、数字、下划线组成,且首字母不能以数字开头。
- 特殊标识符:包括单下划线、双下划线、开头结尾的双下划线。
- _foo:用于标识受保护的成员,是一种约定,提示这些成员是内部实现细节,但没有强制的访问限制。
class MyClass:
def __init__(self, value):
self._my_var = value # 受保护的变量
def get_my_var(self): # 提供公共方法获取受保护的变量
return self._my_var
def set_my_var(self, value): # 提供公共方法设置受保护的变量
self._my_var = value
# 使用案例
obj = MyClass(10)
print(obj.get_my_var()) # 通过公共方法访问受保护的变量,输出 10
obj.set_my_var(20) # 通过公共方法修改受保护的变量
print(obj.get_my_var()) # 输出 20
- __foo:用于定义私有成员,通过名称改编机制来防止外部代码直接访问这些成员,确保封装性。
class MyClass:
def __init__(self, value):
self.__my_var = value # 私有变量
def get_my_var(self): # 提供公共方法访问私有变量
return self.__my_var
def set_my_var(self, value): # 提供公共方法设置私有变量
self.__my_var = value
# 使用案例
obj = MyClass(10)
print(obj.get_my_var()) # 通过公共方法访问私有变量,输出 10
obj.set_my_var(20) # 通过公共方法修改私有变量
print(obj.get_my_var()) # 输出 20
# 尝试直接访问私有变量会报错
# print(obj.__my_var) # AttributeError: 'MyClass' object has no attribute '__my_var'
# 通过名称改编后的名称可以访问,但不推荐
print(obj._MyClass__my_var) # 输出 20
- __foo __: Python 里特殊方法专用的标识,如 __init __() 表示构造函数;__str __:表示字符串;__repr __:表示官方字符串;__add __:加法运算符重载;
class MyClass:
def __init__(self, value):
self.value = value
def __str__(self):
return f"MyClass({self.value})"
def __add__(self, other):
return MyClass(self.value + other.value)
obj1 = MyClass(10)
obj2 = MyClass(20)
print(obj1) # 输出 MyClass(10),调用了__str__方法
obj3 = obj1 + obj2 # 调用了__add__方法
print(obj3) # 输出 MyClass(30)
四、行、缩进、多行语句
Python使用缩进来定义代码块,而不是像其他语言那样使用大括号 {}。
- 缩进:Python使用缩进来表示代码块的开始和结束。相同缩进级别的代码行属于同一个代码块。通常推荐使用4个空格来表示一级缩进,但也可以使用其他数量的空格或制表符(Tab),只要在同一个文件中保持一致即可。
def my_function():
print("这是函数的第一行")
print("这是函数的第二行")
if True:
print("这是if语句的第一行")
print("这是if语句的第二行")
print("这是函数的第三行")
print("这是全局代码块的第一行")
- 多行语句:可以使用反斜杠 \ 或括号来表示多行语句。在括号、中括号或大括号内的多行语句不需要使用反斜杠 \,因为括号内的内容可以自然地跨多行。
long_string = "这是一个非常长的字符串," \
"需要分成多行来提高可读性。"
long_string = ("这是一个非常长的字符串,"
"需要分成多行来提高可读性。")
long_list = [
"这是一个非常长的列表,",
"包含多个元素,",
"需要分成多行来提高可读性。"
]
my_dict = {
"key1": "value1",
"key2": "value2",
"key3": "value3"
}
五、Python 引号
在Python中,引号用于定义字符串。Python支持单引号(‘)、双引号(")和三引号(’‘’ 或 “”")来创建字符串。以下是各种引号的使用方法和示例:
- 单引号('):单引号用于创建简单的字符串。如果字符串中包含单引号,可以使用转义字符 \ 来表示。
# 使用单引号创建字符串
s1 = 'Hello, world!'
print(s1) # 输出 Hello, world!
# 字符串中包含单引号,使用转义字符
s2 = 'It\'s a beautiful day.'
print(s2) # 输出 It's a beautiful day.
- 双引号("):双引号也用于创建字符串。如果字符串中包含双引号,可以使用转义字符 \ 来表示。双引号和单引号在功能上是等价的,但有时使用双引号可以避免转义字符的使用。
# 使用双引号创建字符串
s1 = "Hello, world!"
print(s1) # 输出 Hello, world!
# 字符串中包含双引号,使用转义字符
s2 = "He said, \"Hello!\""
print(s2) # 输出 He said, "Hello!"
# 字符串中包含单引号,不需要转义
s3 = "It's a beautiful day."
print(s3) # 输出 It's a beautiful day.
- 三引号(‘’’ 或 “”"):三引号用于创建多行字符串。三引号可以是三个单引号(‘’')或三个双引号(“”")。多行字符串可以包含换行符,不需要使用转义字符来表示换行。
# 使用三单引号创建多行字符串
s1 = '''This is a multi-line string.
It can span multiple lines.
No need to use escape characters for newlines.'''
print(s1)
# 输出:
# This is a multi-line string.
# It can span multiple lines.
# No need to use escape characters for newlines.
# 使用三双引号创建多行字符串
s2 = """This is another multi-line string.
It can also span multiple lines.
No need to use escape characters for newlines."""
print(s2)
# 输出:
# This is another multi-line string.
# It can also span multiple lines.
# No need to use escape characters for newlines.
六、Python注释
- 单行注释:单行注释以井号 # 开始,直到该行末尾。# 后面的所有内容都会被Python解释器忽略。
# 这是一个单行注释
print("Hello, world!") # 这是另一个单行注释
# 计算两个数的和
a = 10 # 第一个数
b = 20 # 第二个数
sum = a + b # 计算和
print(sum) # 输出结果
- 多行注释:多行注释可以使用三引号(‘’’ 或 “”")来创建。三引号之间的所有内容都会被Python解释器忽略,包括换行符。
'''
这是一个多行注释。
可以包含多行文本,用于解释代码的功能和用途。
'''
"""
这也是一个多行注释。
可以包含多行文本,用于解释代码的功能和用途。
"""
# 使用多行注释来临时禁用代码块
'''
print("This line is commented out")
print("This line is also commented out")
'''
print("Hello, world!") # 这行代码会被执行