Python基础篇(一):如何使用PyCharm创建第一个Python项目(包含tools)
入门基础必备知识
1. 标识符
在Python中,标识符是用来标识变量、函数、类等命名的名称。
Python标识符规则:
- 标识符由
字母、数字
和下划线
组成。 - 标识符
不能以数字开头
。 - 标识符
区分大小写
。
示例:
name = "蔡徐坤" # 变量名为name
age = 25 # 变量名为age
my_variable = 10 # 变量名为my_variable
total_count = 100 # 变量名为total_count
myFunction = ... # 函数名为myFunction
MyClass = ... # 类名为MyClass
注意事项:
- 避免使用Python的
关键字
作为标识符,如if
、for
、while
等。 - 标识符应具有描述性,
见名知意
!能够清晰地表达其所代表的内容。写java的时候最烦命名为int a, int b又不写注释的! - 建议使用小写字母和下划线的组合来命名变量和函数(
遵循Python的命名约定
)。 - 在类名中通常使用
驼峰命名法
,即每个单词的首字母大写,无下划线。
总之,标识符是用来命名变量、函数和类的名称,在命名时需要遵循一定的规则和约定,以提高代码的可读性和可维护性。
2. 关键字
在Python中,关键字是被保留的特殊单词
,具有特定的含义和功能,用于表示语法结构和操作。因此不能作为标识符来命名变量、函数或类
。使用关键字作为标识符会导致语法错误。
Python的关键字列表示例:
以下是Python的所有关键字,按照表格形式展示,并标识其作用:
2.1 关键字字典
关键字 | 作用 |
---|---|
False | 表示布尔值False |
None | 表示空值 |
True | 表示布尔值True |
and | 逻辑与操作 |
as | 创建别名 |
assert | 断言条件是否为真 |
async | 声明异步函数 |
await | 暂停异步函数的执行,等待异步操作完成 |
break | 终止循环 |
class | 定义类 |
continue | 继续下一次循环 |
def | 定义函数 |
del | 删除对象 |
elif | 如果前面的条件不满足,尝试下一个条件 |
else | 如果前面的条件都不满足,则执行这个 |
except | 捕获异常 |
finally | 无论如何都会执行的代码块 |
for | 迭代循环 |
from | 从模块中导入特定内容 |
global | 声明全局变量 |
if | 条件判断 |
import | 导入模块 |
in | 判断元素是否在序列中 |
is | 比较对象是否相同 |
lambda | 创建匿名函数 |
nonlocal | 声明非局部变量 |
not | 逻辑非操作 |
or | 逻辑或操作 |
pass | 占位符,什么都不做 |
raise | 抛出异常 |
return | 返回函数结果 |
try | 尝试执行代码块 |
while | 循环执行代码块 |
with | 管理上下文 |
yield | 生成器函数返回值 |
3. 引号
在Python中,引号主要用于表示字符串(字符串字面值)
。Python支持单引号(')和双引号(")
两种引号的使用方式,还可以使用三引号(''')或三双引号(""")
来创建多行字符串。使用引号能够方便地处理包含文本的数据和注释。
引号的作用如下:
3.1 表示字符串
引号用于创建包含文本的字符串
。可以使用单引号或双引号来表示字符串,两者在Python中没有区别
。
示例:
name = 'caixukun' # 单引号表示字符串
message = "喜欢唱跳rap篮球" # 双引号表示字符串
3.2 在字符串中使用引号
如果字符串本身包含引号,可以使用一种类型的引号将其括起来,以避免冲突。
示例:
sentence = "cxk: '打篮球!'" # 使用双引号包含包含单引号的字符串
quote = 'cxk, "a man!"' # 使用单引号包含包含双引号的字符串
3.3 创建多行字符串
在Python中,可以使用三引号(‘’')或三双引号(“”")来创建多行字符串。
示例:
cxk_text= '''sing
jump
rap'''
3.4 在注释中使用引号
引号也可以在注释中使用,用于说明注释的内容。
示例:
# 这是一个注释,用于说明注释中时可以使用‘引号’的
4. 编码
编码的作用:
在处理文件读写和网络通信等操作时,需要根据实际情况选择合适的编码来确保正确的文本处理和数据传输。
在Python中,不同的版本使用不同的编码标准。下面是Python中各个版本常用的编码:
- Python 2.x
默认使用ASCII
编码,但可以通过在脚本文件中添加以下注释来指定其他编码:
# -*- coding: encoding -*-
#例如添加utf-8
# # -*- coding: UTF-8 -*-
-
Python 3.x
默认使用UTF-8
编码,可以处理各种语言的字符。 -
在Python中,可以使用不同的编码进行文本的处理和转换。常见的编码包括:
- UTF-8:可处理全球范围内的字符,是Python 3.x 默认编码。
- ASCII:仅支持英文字母和常用符号。
- Latin-1(ISO-8859-1):支持欧洲语言字符。
- GBK(GB2312):适用于简体中文。
- Big5:适用于繁体中文。
- Unicode:提供全球范围内字符的标准编码。
5. 输入输出
在Python中,可以使用内置的input()
函数获取用户的输入,并使用print()
函数进行输出。下面是Python的输入输出示例:
5.1 输入示例
name = input("请输入您的姓名: ")
print("您好," + name + "!")
在示例中,input()
函数用于获取用户输入的姓名,并将其保存到name
变量中。然后,使用print()
函数将欢迎消息输出到控制台
5.2 输出示例
age = 25
print("年龄:", age)
在上面的示例中,使用print()
函数将字符串"年龄:"和变量age
的值输出到控制台。
5.3 格式化输出
name = "John"
age = 30
print("姓名: {}, 年龄: {}".format(name, age))
在示例中,使用format()
方法将变量的值格式化插入到字符串中,然后使用print()
函数将格式化后的字符串输出。
5.4 文件输入输出
在示例中,使用open()
函数打开文件,并使用不同的模式("w"表示写入,"r"表示读取)进行文件的输入输出操作。使用write()
方法将内容写入文件,使用read()
方法读取文件的内容,并使用print()
函数输出读取的内容。
# 写入文件
with open("output.txt", "w") as f:
f.write("Hello, world!")
在项目的目录下生成txt文件,文件内容如下:
# 读取文件
with open("output.txt", "r") as f:
content = f.read()
print(content)
6. 缩进
在Python中,缩进是一种结构化的语法规则,用于表示代码块的层次结构和逻辑关系。Python使用缩进来定义代码块,而不是使用大括号或关键字。
缩进规则如下:
-
使用空格或制表符进行缩进:
- 推荐
使用4个空格进行缩进
,这是Python官方推荐的缩进方式。(java中就有tab和空格缩进之争,这里就乖乖用空格吧
) 不推荐混合使用空格和制表符进行缩进
,以避免不一致的缩进导致的错误。
- 推荐
-
缩进的层次表示代码块的嵌套关系:
- 较深的缩进表示内层代码块。
- 缩进相同的代码处于同一层次。
示例代码:
if condition:
statement1 # 缩进表示属于if代码块的语句
statement2 # 缩进表示属于if代码块的语句
if nested_condition:
nested_statement1 # 内层代码块的缩进更深
nested_statement2 # 内层代码块的缩进更深
statement3 # 缩进表示属于if代码块的语句
else:
statement4 # 缩进表示属于else代码块的语句
statement5 # 缩进表示属于else代码块的语句
在Python中,缩进是语法的一部分,缩进错误会导致语法错误或逻辑错误
。因此,正确的缩进对于代码的执行和理解至关重要。在编辑器中使用一致的缩进方式,并遵循Python的缩进规则,可以帮助提高代码的可读性和可维护性
。(写java的时候最烦xjb缩进的还有代码不格式化的)
7. 注释
注释的作用:(lz最烦不写注释,还是魔法值的代码)
注释在代码中起到重要的作用,有助于提高代码的可读性和可维护性
。通过注释,可以向其他人或自己解释代码的目的、逻辑或特定要点。良好的注释习惯可以使代码更易于理解和修改。
在Python中,注释用于在代码中添加说明性文字,对代码进行解释、补充或标记。注释不会被解释器执行
,它们只是对代码的说明。Python支持两种类型的注释:单行注释和多行注释
。
7.1 单行注释
- 使用
#
符号表示单行注释。在#
符号后面的所有内容都会被解释器忽略。 - 示例:
# 这是一个单行注释 x = 5 # 这是一个带有注释的赋值语句
7.2 多行注释
- 使用三个单引号(‘’')或三个双引号(“”")表示多行注释。可以在三引号之间添加多行文字作为注释。
- 示例:
''' 这是一个多行注释。 它可以跨越多行,提供详细的代码说明。 ''' '''''' 这是一个多行注释。 它可以跨越多行,提供详细的代码说明。 ''''''
8. 数据类型
在Python中,有多种内置的数据类型,用于存储和操作不同种类的数据。下面是Python中常见的数据类型及其示例:
-
数字类型:
- 整数(int):表示整数值,如
x = 10
。 - 浮点数(float):表示带有小数点的数值,如
y = 3.14
。 - 复数(complex):表示实部和虚部构成的复数,如
z = 2 + 3j
。
- 整数(int):表示整数值,如
-
布尔类型:
- 布尔(bool):表示逻辑值,只有两个取值:True和False,如
is_true = True
。
- 布尔(bool):表示逻辑值,只有两个取值:True和False,如
-
字符串类型:
- 字符串(str):表示文本数据,使用单引号或双引号括起来,如
message = "Hello, world!"
。
- 字符串(str):表示文本数据,使用单引号或双引号括起来,如
-
列表类型:
- 列表(list):表示有序的可变数据序列,可以包含不同类型的元素,如
numbers = [1, 2, 3, 4]
。
- 列表(list):表示有序的可变数据序列,可以包含不同类型的元素,如
-
元组类型:
- 元组(tuple):表示有序的不可变数据序列,可以包含不同类型的元素,如
point = (x, y)
。
- 元组(tuple):表示有序的不可变数据序列,可以包含不同类型的元素,如
-
字典类型:
- 字典(dict):表示键-值对的集合,用于存储具有相关性的数据,如
person = {"name": "John", "age": 30}
。
- 字典(dict):表示键-值对的集合,用于存储具有相关性的数据,如
-
集合类型:
- 集合(set):表示唯一、无序的元素集合,用于去重或集合操作,如
unique_numbers = {1, 2, 3, 4, 4}
。
- 集合(set):表示唯一、无序的元素集合,用于去重或集合操作,如
-
None类型:
- None:表示空值或缺失值,如
result = None
。
- None:表示空值或缺失值,如
以上是Python中常见的数据类型。可以根据需要选择合适的数据类型来存储和操作数据。Python还提供了丰富的内置函数和方法,用于对不同类型的数据进行操作和处理。
9.常用的运算符及其示例
9.1 运算符示例
运算符 | 描述 | 示例 |
---|---|---|
+ | 加法 | x + y |
- | 减法 | x - y |
* | 乘法 | x * y |
/ | 除法 | x / y |
% | 取模(取余) | x % y |
// | 整除(向下取整) | x // y |
** | 指数 | x ** y |
== | 等于 | x == y |
!= | 不等于 | x != y |
> | 大于 | x > y |
< | 小于 | x < y |
>= | 大于等于 | x >= y |
<= | 小于等于 | x <= y |
and | 逻辑与 | x and y |
or | 逻辑或 | x or y |
not | 逻辑非 | not x |
in | 成员运算符(属于) | x in y |
not in | 成员运算符(不属于) | x not in y |
is | 身份运算符(相同) | x is y |
is not | 身份运算符(不同) | x is not y |
= | 赋值 | x = y |
+= | 加法赋值 | x += y |
-= | 减法赋值 | x -= y |
*= | 乘法赋值 | x *= y |
/= | 除法赋值 | x /= y |
%= | 取模赋值 | x %= y |
//= | 整除赋值 | x //= y |
**= | 指数赋值 | x **= y |
9.2 运算符的优先级
以下是Python中常见运算符的优先级,按照从高到低的顺序排列:
运算符 | 描述 |
---|---|
() | 括号 |
** | 幂运算 |
* / % // | 乘法、除法、取模和整除 |
+ - | 加法和减法 |
< > <= >= | 比较运算符 |
== != | 相等性运算符 |
is is not | 身份运算符 |
in not in | 成员运算符 |
not | 逻辑非 |
and | 逻辑与 |
or | 逻辑或 |
= += -= *= /= %= //= **= | 赋值运算符 |
这个表格按照优先级从高到低
的顺序列出了常见的运算符。在表达式中,具有较高优先级的运算符会先于具有较低优先级的运算符进行计算。如果有相同优先级的运算符,通常按照从左到右的顺序计算。