环境安装与编程基础
欢迎阅读 Web Dev Beginner 项目!本文档旨在帮助大家快速搭建开发环境,熟悉基本的工具和知识,为首次考核和后续开始开发做好准备。
INFO
本文档涉及对开源项目或文档的部分引用,所有参考文档均基于 MIT 许可证开源并标注在项目仓库,在此一并表示感谢。本文档仅供学习交流使用,不涉及商业及宣传性质,如有侵权请通过 About 页联系删除。
在开始学习前,请按照以下指导,按顺序完成准备工作。
入学霍格沃茨
学计算机知识和 Web 开发之前你需要先掌握一点魔法,虽然这让人感到麻烦但这是先决条件。有了这项技能之后环境的安装与包的下载将更加顺利。具体不方便展开,哔哩哔哩、必应或者 GPT 镜像站有答案,请自己使用搜索引擎研究。研究好后,务必谷歌搜索一下 TUN 模式如何打开。
什么是 "魔法"?
代理上网是指通过代理服务器来访问互联网,代理服务器会代替你的电脑访问互联网,这样可以隐藏你的真实 IP 地址,保护你的隐私。代理服务器还可以加速访问速度,提高访问成功率。这通常可由多种协议实现,如 HTTP、HTTPS、SOCKS、Shadowsocks、Vmss 等。
WARNING
后续步骤依赖此步骤,请务必研究明白
环境安装
1. 安装 Scoop
Scoop 需要 PowerShell 作为运行环境。如果你用的是 Windows 10 及以上版本,系统里已经自带了 Windows PowerShell。但如果你还在用 Windows 7,它自带的 PowerShell 版本太旧了,需要你手动安装新版 PowerShell。你可以去微软官网搜索 PowerShell 7
进行安装。不过,建议升级到 Windows 10 及以上版本,目前很少有人还在使用 Windows 7。
WARNING
很多同学在设置 Windows 用户时使用了中文用户名,导致了用户目录也变成了中文名。如果按照 Scoop 的默认方式将软件安装到用户目录下,可能会造成部分软件执行错误。所以这里推荐安装到自定义目录,如果需要其他安装方式请参考:ScoopInstaller/Install
TIP
如何打开 Windows 终端:
- 使用快捷键:按下 Win + X,然后选择 "Windows 终端" 或 "Windows 终端(管理员)"。
- 通过开始菜单:点击左下角的 "开始" 按钮,搜索 "Windows 终端",然后点击打开。
- 右键菜单:在桌面或文件夹空白处右键,选择 "在 Windows 终端中打开"
在终端里依次执行以下命令,井号开头的行不需要执行,这叫做注释。
# 设置 PowerShell 执行策略
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
# 下载安装脚本
irm get.scoop.sh -outfile 'install.ps1'
# 执行安装, --ScoopDir 参数指定 Scoop 安装路径
.\install.ps1 -ScoopDir 'C:\Scoop'
2
3
4
5
6
安装完成后,打开 命令提示符 或 PowerShell,输入以下命令检查是否安装成功:
scoop --version
如果输出 Scoop 的版本号,则说明安装成功。
2. 使用 Scoop 安装开发环境
Scoop 可以自动为你安装常用的开发工具。接下来我们将依次安装 Python、Git、Node.js、Sudo。
步骤 1:安装 Python
在 命令提示符 或 PowerShell 中执行以下命令:
bashscoop install python
1安装完成后,验证 Python 是否安装成功:
bashpython --version
1
TIP
当你安装完新的软件,需要重新打开一个终端才能使用它的指令。后文中的所有 version 指令都是在新的终端中执行的。
步骤 2:安装 Git
执行以下命令安装 Git:
bashscoop install git
1安装完成后,检查 Git 是否成功安装:
bashgit --version
1
步骤 3:安装 Node.js
执行以下命令安装 Node.js:
bashscoop install nodejs
1安装完成后,检查 Node.js 和 npm 是否成功安装:
bashnode --version npm --version
1
2
步骤 4:安装 Sudo
sudo
是 Linux 系统中的提权指令,方便以管理员身份执行命令,我们可以在 Windows 里添加这个指令。自从 Windows 11 24H2 开始,Windows Terminal 已经内置了 Sudo 功能,只需要在 “设置” 中的开发者选项页面开启即可。如果你使用的是 Windows 10 或者 Windows 11 24H2 以下版本,你可以使用 Scoop 安装 Sudo。
使用以下命令安装 Sudo:
bashscoop install sudo
1安装完成后,检查 Sudo 是否安装成功:
bashsudo
1
步骤 5:安装 VSCode
Visual Studio Code 需要从官方网站下载安装。
前往 Visual Studio Code 官方网站,下载适用于 Windows 的安装包并进行安装。
安装完成后,验证 VSCode 是否安装成功:
bashcode --version
1
3. 安装 pnpm
pnpm 是一种高效的 JavaScript 包管理工具,可以通过 npm 轻松安装。
执行以下命令使用 npm 安装 pnpm:
bashnpm install -g pnpm
1安装完成后,检查 pnpm 是否成功安装:
bashpnpm --version
1
至此,你已经完成了在 Windows 上利用 Scoop 配置开发环境并安装 pnpm 的全过程。
4. 常见问题
- 如果开发过程中遇到权限问题,使用
sudo
命令来提升权限。 - 如果某个命令未识别,重新开一个终端,并检查工具是否已成功安装。
Python 光速入门
python 几乎是最适合初学者的编程语言,它的语法简单易懂,学习曲线平缓。我们不会在此文档中详细介绍 Python ,而是借助它简单易懂的特点快速感知编程中的一些基本概念。 通过这个简短的我们将学习使用高级语言中基本的数据类型和运算符、控制流、函数、列表、字符串等。
如何运行一个 Python 程序
方法一:使用命令提示符
创建文件夹:在你的电脑上,选择一个位置,新建一个文件夹,文件夹的名称建议使用英文字符(例如
D:\PythonProjects
)。创建 Python 文件:在文件夹中右键选择 “新建”->“文本文档”。确保你可以看到文件扩展名
.txt
。如果看不到,请修改文件夹选项来显示文件扩展名(百度搜索 “如何显示文件扩展名”)。编写代码:双击打开刚创建的文本文件,输入以下代码:
pythonprint("Hello, World!")
1保存并重命名:将文件另存为
hello.py
,确保扩展名从.txt
改为.py
。打开命令提示符:在文件夹中,按住
Shift
键并右键点击空白处,选择 “在此处打开命令窗口” 或 “在此处打开 PowerShell 窗口”。运行程序:在命令提示符中输入:
bashpython hello.py
1你应该会看到输出:
Hello, World!
方法二:使用 VSCode
打开 VSCode:首先,确保你已经安装了 Visual Studio Code。
打开文件夹:在 VSCode 中,点击 “文件” -> “打开文件夹”,选择一个英文路径的文件夹(如
C:\PythonProjects
)。新建 Python 文件:在左侧的文件资源管理器中,点击 “新建文件” 图标,命名为
hello.py
。编写代码:在文件中输入以下代码:
pythonprint("Hello, World!")
1运行程序:按下
F5
键,选择 “Python 文件” 作为调试配置,程序将运行,输出结果会显示在终端。
TIP
如果 VSCode 提示你安装 Python 扩展,请根据提示操作,这会提升你的编程体验。
编码规范
缩进:Python 使用缩进来表示代码块的层级结构,通常使用 4 个空格作为一个缩进层级。
空格使用规则:
- 逗号
,
、冒号:
和分号;
后添加一个空格。 - 函数名与括号之间不要加空格,例如
print(x)
。 - 在赋值运算符
=
两边添加空格,但在函数参数中不要加空格。
命名规则:
- 变量和函数:使用小写字母,单词之间用下划线连接,例如
my_variable
。 - 类名:每个单词的首字母大写,例如
MyClass
。
变量
变量是用来存储数据的。Python 是一种动态类型语言,意味着你不需要事先声明变量类型,直接赋值即可。
x = 10 # 变量 x 是一个整数
print(x) # 输出 10
x = "hello" # 现在 x 是一个字符串
print(x) # 输出 hello
2
3
4
算术运算
Python 提供了基本的算术运算,如加法、减法、乘法和除法,以及一些特殊运算:
/
:浮点除法,结果是小数。//
:整数除法,结果是向下取整。%
:取余运算,返回余数。**
:幂运算,表示一个数的几次方。
print(5 / 2) # 输出 2.5
print(5 // 2) # 输出 2
print(5 % 2) # 输出 1
print(5 ** 2) # 输出 25
2
3
4
比较与逻辑运算符
- 赋值运算符:
=
用于将值赋给变量。 - 比较运算符:
==
(等于)、!=
(不等于)、>
、<
、>=
、<=
。 - 逻辑运算符:
and
(与)、or
(或)、not
(非)。
x = 5
y = 2
print(x == y) # 输出 False
print(x > y) # 输出 True
print((5 > 3) and (2 < 4)) # 输出 True
2
3
4
5
成员运算符
- in:检查某个元素是否在序列中。
- not in:检查某个元素是否不在序列中。
a = 10
b = [10, 20, 30]
print(a in b) # 输出 True
print(a not in b) # 输出 False
2
3
4
控制流
Python 提供了几种控制代码执行顺序的语句:
if
条件语句:根据条件判断执行不同的代码块。pythonage = 18 if age >= 18: print("成年") else: print("未成年")
1
2
3
4
5for
循环:用于遍历序列中的每个元素。pythonfor i in range(3): print(i) # 输出 0, 1, 2
1
2while
循环:只要条件为True
,就会一直执行代码块。pythoncount = 0 while count < 3: print(count) count += 1
1
2
3
4break
语句:用于跳出当前循环。pythonfor i in range(5): if i == 3: break print(i) # 输出 0, 1, 2
1
2
3
4continue
语句:跳过当前循环的剩余部分,直接进入下一次循环。pythonfor i in range(5): if i == 3: continue print(i) # 输出 0, 1, 2, 4
1
2
3
4
列表
列表是一个可变的、有序的元素集合,用方括号表示。你可以添加、访问、删除列表中的元素。
my_list = [1, 'hello', [2, 3]]
my_list.append('new item') # 添加元素
print(my_list[0]) # 输出 1
print(my_list[-1]) # 输出 'new item'
del my_list[1] # 删除元素 'hello'
2
3
4
5
字符串
字符串用于表示文本,用单引号 '
或双引号 "
包裹。
s = "Hello World"
print(s[0]) # 输出 'H'
print(s.lower()) # 输出 'hello world'
s += ", Python"
print(s) # 输出 'Hello World, Python'
2
3
4
5
生成器
生成器是用于生成大量数据的特殊迭代器,节省内存。
for i in range(5):
print(i) # 输出 0 到 4
2
生成器适合处理大量或无限数据。
赋值与比较
- 赋值:
=
用于将值赋给变量。 - 比较:
==
用于检查两个值是否相等,!=
用于检查是否不相等。
x = 5
y = 2
print(x == y) # 输出 False
print(x != y) # 输出 True
2
3
4
我学会了吗?
现在,打开 洛谷,登录账号,在题库中选择 “入门” 题目,尝试解答一两道。如果顺利完成,说明你已经掌握了以上内容!
WARNING
本文档的目标不是讲解算法竞赛,该段落旨在让初学者体会编程的基本概念。
快速了解 OJ 如何使用
在线评测系统(Online Judge,简称 OJ)是程序员练习编程和算法的常用平台。下面我们以洛谷(Luogu)上的一道经典题目 A+B 为例,讲解什么是题目的输入输出,如何在代码里按格式输入输出,以及常见的评测结果解读。
题目描述
给定两个整数 A
和 B
,计算它们的和。
输入格式
一行,包含两个整数 A
和 B
,以空格分隔。
输出格式
一行,输出 A
和 B
的和。
样例输入
1 2
样例输出
3
Python 解法
以下是使用 Python 解决该问题的示例代码,注意看代码的输入输出格式和技巧:
# 读取输入,并将其拆分为两个整数
a, b = map(int, input().split())
# 计算并输出结果
print(a + b)
2
3
4
5
代码说明:
- 使用
input().split()
读取一行输入,并按空格分隔。 - 使用
map(int, ...)
将字符串转换为整数。 - 使用
print()
输出结果。
C++ 解法
以下是使用 C++ 解决该问题的示例代码:
#include <iostream>
using namespace std;
int main() {
int a, b;
// 读取输入
cin >> a >> b;
// 输出结果
cout << a + b << endl;
return 0;
}
2
3
4
5
6
7
8
9
10
11
代码说明:
- 包含头文件
<iostream>
以使用输入输出。 - 使用
cin
读取两个整数。 - 使用
cout
输出结果,并以endl
换行。
提交步骤
- 登录洛谷:进入洛谷官方网站并登录你的账号。
- 找到题目:在题库中搜索 "A+B" 题目。
- 编写代码:在在线编辑器中粘贴上述代码,选择对应的编程语言(Python 或 C++)。
- 提交评测:点击提交按钮,等待评测结果。
评测结果解读
- AC(Accepted) :答案正确,程序通过所有测试用例。
- WA(Wrong Answer) :答案错误,程序未通过某些测试用例。
- TLE(Time Limit Exceeded) :超出时间限制,程序运行时间过长。
- MLE(Memory Limit Exceeded) :超出内存限制,程序占用内存过大。
- RE(Runtime Error) :运行时错误,程序在运行过程中崩溃或出现异常。
- CE(Compile Error) :编译错误,代码无法通过编译。
注意事项
- 严格按照输入输出格式:OJ 对输入输出格式要求非常严格,需与题目描述完全一致。
- 数据范围:注意题目中给定的数据范围,选择合适的数据类型(如
int
、long
等)。 - 编码规范:只使用标准库,避免平台不支持导致错误。
管理项目并和队友协作 - GitHub 注册
注册 GitHub 账号
GitHub 是一个基于 Git 的代码托管平台,方便开发者协作和分享代码。
注册步骤:
访问 GitHub 网站:
- 前往 GitHub 官方网站。
创建账号:
- 点击 “Sign up” 按钮。
- 输入邮箱、密码和用户名,按照提示完成注册流程。
- 验证邮箱以激活账号。
创建自我介绍仓库
通过创建一个自我介绍的仓库,可以让他人更好地了解你。
创建步骤:
新建仓库:
- 登录 GitHub 后,点击右上角的 “+” 号,选择 “New repository”。
- 仓库名称需与用户名相同,这样可以创建一个特殊的个人简介仓库。
- 例如,用户名为
your-username
,则仓库名也需为your-username
。
填写仓库信息:
- 在 “Repository name” 中输入你的用户名。
- 添加仓库描述,如 “Welcome to my GitHub profile!”。
- 勾选 “Add a README file” 选项。
- 点击 “Create repository” 按钮。
编辑 README 文件:
在新创建的仓库中,点击 “README.md” 文件。
点击铅笔图标进行编辑。
使用 Markdown 语法添加自我介绍内容,包括:
- 你的昵称
- 兴趣爱好
- 掌握的技能
提交更改:
- 编辑完成后,填写 “Commit message”。
- 点击 “Commit changes” 保存更改。
最终你的主页应该会展示你的自我介绍,例如:
恭喜完成预备工作
在你的电脑上执行这些指令,获得输出,这表明您已经配置好环境。
> python --version
Python 3.12.3
> git --version
git version 2.45.1.windows.1
> node --version
v22.8.0
> npm --version
10.8.2
> sudo
usage: sudo <cmd...>
> code --version
0.41.2
> pnpm --version
9.9.0
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20