Python入门教程(全网最详细),零基础入门到精通,从看这一篇开始!
前言
编程入门阶段,不用花时间学习和记忆细枝末节,这样会分散新手去理解核心逻辑的精力,而且很常用的知识也很容易被遗忘。真实世界里的编程不是闭卷考试,不需要把语言的细节全部记住,因为随时可以上网搜索和查阅技术文档。写多代码的人最后都会意识到,更重要的是具备搜索问题、发现答案和高效解决的能力,而不是成为记忆大师。
入门编程语言选择,优先选择Python。Python容易教,容易学,
Python 语言是一种高级语言,是面向对象、解释性的程序设计语言,具有语法简洁、易
于学习、功能强大、可扩展性强、跨平台等特点。
其一:语法简洁;
其二:封装得更适合新手,对于新手来说,更应该先专注于理解逻辑,而不是计算机底层构造,Python无需了解指针和内存管理等计算机偏底层的内容;
其三:内置函数非常多,已写好的工具较多。
Python的主要应用:脚本、网站后端、数据分析、机器学习等。
Java有完善的工具库和框架,稳定性高,适合做网站后端、安卓应用、桌面应用。
JavaScript主要应用在网站前端,也可以做网站后端、移动端、小程序。
C的好处自由度高,可以直接操作内存和计算机硬件,帮助了解底层构造。C的主要应用:硬件、嵌入式、操作系统等底层软件开发。
总结:新手不用花过多时间纠结第一门语言学什么,因为很多编程语言的语法定义差别不大。只要学会第一门语言,之后的语言更容易上手。比起选择什么语言,更关键的是什么时候动起来。
第一章 软件安装
一、Python解释器
机器无法直接读懂编写的Python代码,需要一个解释器作为中间的翻译,把代码转换为字节码后再执行,Python的运行过程为翻译一行,执行一行。
一般常说的安装Python,本质上指的是安装Python解释器。
1.下载安装包
访问Python官网(Download Python | Python.org)


2.运行安装程序
双击下载的.exe文件,
![]()
选择“Customize installation”
在“Optional Features”界面勾选所有选项(如pip、IDLE)。
在“Advanced Options”中勾选“Add Python to PATH”和“Disable path length limit”,指定安装路径后点击“Install”。
3.验证安装
打开命令提示符(cmd),输入python --version,若显示版本号(如Python 3.8.2)则安装成功。

二、代码编辑器
用于编写程序代码,代码编辑器种类非常多。
PyCharm 是由 JetBrains 打造的一款 Python IDE。
PyCharm 具备一般 Python IDE 的功能,如调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试、版本控制等。
另外,PyCharm 还提供了一些很好的功能用于 Django 开发
可以根据不同的平台下载不同版本的 PyCharm,并且每个平台均可以选择下载
Professional 和 Community 两个版本。两个版本的特点如下。
Professional 版本
(1)提供 Python IDE 所有的功能,支持 Web 开发。
(2)支持 Django、Flask、Google App 引擎、Pyramid 和 web2py。
(3)支持 JavaScript、CoffeeScript、TypeScript、CSS 和 Cython 等。
(4)支持远程开发、Python 分析器、数据库和 SQL 语句。
Community 版本
(1)它是轻量级的 Python IDE,只支持 Python 开发。
(2)免费、开源、集成 Apache2 的许可证。
(3)智能编辑器、调试器、支持重构和错误检查,集成 VCS 版本控制。
这里建议下载 Professional 版本。
版本 激活 网上都有参考教程
1.下载安装包
PyCharm官方网址: PyCharm,您需要的唯一 Python IDE
打开PyCharm代码编辑器

点击主页右侧【下载】/【Download】按钮,进入下载页面,往下滑到黑色背景区域,点击黑色背景区域的【下载】按钮下载软件。
注:上部分白色背景区域为专业版,需付费,仅30天免费试用期。下方黑色背景区域为社区版,为免费版本。
2.软件安装
软件下载完成后,点击“打开文件”开始安装。
在安装界面点击【Next】。

安装路径选择界面,可不修改,使用默认路径,点击【Next】。
勾选“Create Desktop Stortcut”下方的选框,为安装完成后生成桌面图标;
勾选“Create Associations”下方的选框,将Python所有文件使用此软件(PyCharm)打开。
点击【Next】。
选择开始菜单文件夹界面,直接点击【Install】开始安装软件。
安装完成后,点击【Finish】完成安装。

三、安装 pip
(1)安装 pip 之前,首先确认你的 Python 环境正常,然后通过官网下载 pip 安装包,(pip · PyPI)

(2)将下载的包解压,如解压到 D 盘,然后通过 Win+R 快捷方式打开命令提示符窗口,
并在命令提示符中进入到 pip 文件目录下
(3)在 pip 目录下,输入命令“python setup.py install”进行 pip 模块的安装;安装完成后
会有“Finished processing dependencies for pip==19.1.1”字样,如图 1-3-5 所示。
(4)待安装完成后,在命令提示符中输入“pip --help”,如果有相应的输出且没有报错,
则表示 pip 成功安装
以上所述操作是下载 pip 压缩包进行安装的操作,也可下载“pip−19.1.1-py2.py3-none
any.whl”直接安装。同样,pip 命令也支持扩展名为.whl 的文件直接安装 Python 扩展库。
(5)部分 Python 版本默认安装了 pip,但是由于不是最新版本故需要升级,pip 的升级命
令为“python-m install pip--upgrade pip”。
第二章 pycharm编辑器使用
1.打开浏览器,点击文件-》新建项目
2.选择项目文件存储目录,建议点击右侧文件夹按钮在电脑上新建一个文件夹,用于存储此项目所有文件。
基本解释器:右侧下拉选择已安装的解释器。

PyCharm自动创建的 venv 文件夹,为虚拟环境文件夹,表示此项目独立的Python虚拟环境,存在的目的是让不同的项目可以使用不同的Python解释器版本,还有安装的第三方库等。此文件夹不要移动,不要删除,不要往里面放任何东西。
虚拟环境的好处是可以让不同项目使用不同解释器版本、第三方库等,适用于程序员做多个项目以及团队合作的情况。但对新手来说,用虚拟环境不是必要的,所以如果没有 venv 文件夹,也不用专门回去修改。
3.新建Python代码文件

在输入框输入文件名称,按回车键确认;
4.输入测试代码后运行
print(“hello world!!”)
英文输入法输入相应代码,符号也必须英文状态下输入,否则会出错。
注:引号可以是 双引号 ,也可以是 单引号 。引号以及引号内的内容为字符串。即使里面写的数字,也会被视为字符串。
测试运行代码。代码输入完成后,右击代码框,选择【运行】按钮运行代码;

运行窗口,显示程序运行状态。运行窗口的第一行和最后一行是软件自动生成的,第一行为PyCharm在运行代码时自动触发的运行指令,最后一行末尾显示为0,则代表程序无错误,如果是非零的数字,代表程序有错误。中间部分为程序运行的结果输出内容。

如果程序编辑错误,软件会自动用红色下划线提示,运行了错误的程序,运行窗口也会有错误提示内容。最后一行末尾数字也会是非零的数字。

注:如果不知道错误原因,可以复制错误提示的最后一行到百度内,粘贴并搜索,能找到别人也遇到过相似的问题的处理方式和原因。
第三章 基础语法指令
代码块:
缩进相同的一组语句构成一个代码块,我们称代码块。像 if、while、def 和 class 这样的复合语句,首行以关键字开始,以冒号(:)结束,该行 之后的一行或多行代码构成代码块。

行和缩进
学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号({})来控制类、 函数及其他逻辑判断,而使用缩进来写代码块;
Python 语句一般不用分号(;)表示结束,而是直接以换行表示一行结束。除了条件循环语句体,其他用换行表示行结束,继续下一个新 行。当然,Python 也可以使用分号(;)来结束语句,这个常用于一行里写多条代码时,用分号(;)隔开不同的语句。如以下两种方式都可以。
一、变量
Python语言在定义变量时,不需要指定变量的数据类型,Python程序会根据变量值,自动确定变量类型。
变量名称规则:字母、数字、下划线组成;
不能有除了下划线以外的符号;
不能有空格;
不能以数字开头;
不能用双引号包括;
变量区分大小写;
不能使用专用关键字。(False, None, 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)
变量命名建议:不要使用拼英,使用英文单词组命名,Python3.0版本后支持中文变量,但是不建议使用中文变量,可能存在乱码。
Python变量命名约定俗成使用 下划线命名法。
1.字母全部小写
2.不同单词用下划线分隔
例如:user_age user_gender
变量赋值操作用单等号,例如 my_love = 123456789
代码是一行一行执行的,故使用变量时,变量必须在此之前定义,否则会出错。
二、注释
# 为注释符,仅当前行注释。
快捷键: ctrl+/
如果需要撤销注释,选择注释行,按 ctrl+/ 将撤销注释。
快捷键注释方法适用于一次性注释连续的多行或连续的撤销注释。
三引号注释, “”" “”" ,也适用于多行注释。
如果将多行注释前面加上变量名和等号,将代表将此内容赋值给一个变量。
str="""
一
二
三
"""
print(str)

三、数据类型
1、字符串 str
字符串特点是被双引号或单引号包裹,例如:”字符串” ‘字符串’
(1)字符串连接
字符串之间用“ + ”号作为连接符。
例如:print(“Hello”+” World”+”!”)
(2)单双引号转义
print("He said "good!"")
此行程序会出错,默认为前面两个引号为一组,后面两个引号为一组,第二个到第三个引号之间的内容会出错。
需要改为以下指令:
print("He said 'good!'")
print('He said "good!"')
如果一句话内有单引号和双引号,例如:
“He said “Let’s go!””
需要在引号前加反斜杠 ** ,表示后面的引号为引号符号,是内容的一部分,不是结束符。
print("He said \"Let\'s go!\"")
(3)换行
\n 表示换行
print("Hello! \n Hi!")
打印出来的内容如下图,Hi!显示在下一行。

(4)三引号跨行字符串
三个连在一起单引号或双引号。
“”" “”" ‘’’ ‘’’


(5)字符串转换
a=1
print(type(a))
b=str(a)
print(type(b))
<class 'int'>
<class 'str'>
(6)字符串截取
x="xyz123"
print(x[1])
print(x[2:4])
y
z1
(7)字符串分割
m="aaa,bbb,ccc,ddd"
print(m.split(","))
['aaa', 'bbb', 'ccc', 'ddd']
(8)字符串替换
n="aaa,bbb,ccc,ddd"
print(n.replace(",","或"))
aaa或bbb或ccc或ddd
(9)字符串长度len()
可以对字符串使用 len 指令得到字符串长度;可以提取字符串中某一个位置的单个字符;字符串编码从0起始。例如:
print(len("Hello"))
print(len("你好!"))
print(len("\n"))
print("hello"[0])

(10)格式化字符串
format方法
位置参数:format内的参数起始编号以0开始,即花括号引用的0表示第一个参数,1表示第二个参数。
name = "Alice"
age = 30
print("Hello, {}. You are {} years old.".format(name, age))
Hello, Alice. You are 30 years old.
关键字参数:format还可以根据关键词引用,这种方式就不需要考虑参数在format内的哪个位置,只根据关键词引用。
print("金额是{num}元".format(num=99.8))
金额是99.8元
f-字符串
f字符串引用已定义的字符串变量。
name ="老林"
year ="虎"
message_content =f"""
律回春渐,新元肇启。
新岁甫至,福气东来。
金{year}贺岁,欢乐祥瑞。
金{year}敲门,五福临门。
给{name}及家人拜年啦!
新春快乐,{year}年大吉!
"""
print(message_content)
律回春渐,新元肇启。
新岁甫至,福气东来。
金虎贺岁,欢乐祥瑞。
金虎敲门,五福临门。
给老林及家人拜年啦!
新春快乐,虎年大吉!
format方法调到用字符串可以直接调用数字,不需要额外进行数字转字符串的操作。

还可以使用 冒号+点+数字+f 来指定浮点数在格式化是保留几位小数。

字符串函数:Python 字符串 | 菜鸟教程
2、整数 int、浮点数 float
6 -32 整数 int
6.0 10.07 浮点数 float
3、布尔类型 bool
只有两种:真 假 True False (区分大小写)
4、空值类型 NoneType
只有一种值: None
表示完全没有值
None 不是0,不是空字符串””,也不是False。
当不确定变量数据类型时,可以使用 type 指令反馈变量类型。
print(type("hello"))
print(type(32))
print(type(3.0))
print(type(True))
print(type(None))

5、列表 []
(1)特点:有序,可重复,可扩展
shopping_list = []
一个空列表用 中括号 [] 表示。
shopping_list = [“ 键盘”,”鼠标”]
(2)列表方法:
追加:append()
删除:remove()
元素数量:len()
列表提取:shopping_list[1]
shopping_list.append = [“ 显示器”]
shopping_list.remove = [“ 显示器”]
shopping_list = [“键盘”,”鼠标”,”硬盘”]
len(shopping_list) ,返回为3,列表求长度返回的是列表中元素的数量;
列表内可放不同类型的数据;
也可以通过索引获取列表中某个元素。
shopping_list =[“键盘”,”鼠标”,”硬盘”]
print(shopping_list[0]) ,返回为 键盘,列表索引也是从0开始。
列表为可变数据类型。
6、元组 tuple()
元组 特点:有序,可重复, 不可扩展
不可变但又很像列表的数据结构 。
元组内可放多个元素。
列表用方括号;元组用 圆括号() 。
元组不可变,添加、删除等操作都不能操作

可以把元组作为键使用:
contacts={
("张伟",23):"15000000000",
("李四",34):"15000000001",
("王五",56):"15000000002"
}
zhangwei23_phone=contacts[("张伟",23)]
print(zhangwei23_phone)
15000000000
7、集合 set()
集合 特点:无序, 不可重复,可扩展
names ={'张三','李四','王五','张三','李四'}
print(names,type(names))
以上程序运行输出内容:
{'李四', '王五', '张三'} <class 'set'>
8、字典 {}
键 : 值
key value
contacts = {}
一个空字典用 花括号 {} 表示。
键必须为不可变数据类型;即字符串、整数、浮点数等,不能为列表。
contacts={"小明":"13700000000",
"小花":"13700000001"}
判断键是否存在字典里面: “ 键”in 字典名
print("小明" in contacts)
True
删除键与对应的值: del 字典名[“键”]
**** 如果键不存在,指令会报错。

求键值对数量: len( 字典名)
contacts={"小明":"13700000000",
"小花":"13700000001"}
print(len(contacts))
2
返回字典的键、值、键值对的方法key()、values()、items():
contacts={"小明":"13700000000",
"小花":"13700000001"}
print(contacts.keys())
print(contacts.values())
print(contacts.items())
dict_keys(['小明', '小花'])
dict_values(['13700000000', '13700000001'])
dict_items([('小明', '13700000000'), ('小花', '13700000001')])
四、input——用户输入指令
执行 input 指令时,读取用户输入的数据。
name=input("请输入你的姓名:")
weight=float(input("请输入你的体重(单位:千克:)"))
print(name,weight)

五、数学运算
带双引号的数字是字符串 “6” ,
带小数点的数字都是浮点数 6.0 ,
不带小数的数字为整数 6 。
加(+) 减(-) 乘(*) 除(/) 乘方(**)
在程序前添加 import math **** 指令,可以将Python内置的函数库加载到程序内。
使用内置函数可以直接访问,例如 math.sin(1)


内置函数库网址: math — 数学函数 — Python 3.13.0 文档

六、条件语句
== 比较运算符 等于 。
!= 比较运算符 不等于 。
条件判断语法结构:
score=float(input("请输入你的成绩:"))
if score==100:
print("奖励100元")
else:
print("下次继续努力!")

执行语句需要缩进四个空格,如果不缩进,默认为条件语句已经执行结束。
七、嵌套/多条件判断
下图表示多条件嵌套写法,注意缩进数量。



条件判断语句内可以使用连续的判断符号 if 0<= score <= 100:
score=float(input("请输入你的成绩:"))
if 0<=score<=100:
if score>=80:
print("优秀");
elif score>=70:
print("良");
else:
print("差")
else:
print("成绩非法")

三目运算符 :是 if…else… 双分支结构的缩写形式。
格式: 结果1 if 条件 else 结果2
结果1:条件成立时返回的结果
结果2:条件不成立时返回的结果
例子: second_max = num1 if num1 > num2 else num2
判断num1是否大于num2,如果成立,则返回num1的值赋值给左边的变量,否则返回num2的值给左边的变量。
num1=12
num2=23
second_max = num1 if num1 > num2 else num2
print(second_max)
八、逻辑运算
与(and) 所有条件为True,才会返回True;只要有一个为False,就为False。
或(or) 只要有一个条件为True,就会返回True;所有条件为False,才为False。
非(not) 操作对象为True,则返回Flase;操作对象是Flase,则返回True。
优先级顺序 not ——> and ——> or
也可以使用括号改变运算顺序not(x>5 and (x<10 or x==12))
九、for循环

contacts={"小明":"13700000000",
"小花":"13700000001"}
for name,phone in contacts.items():
print(name,phone)
小明 13700000000
小花 13700000001
break **** 终止当前循环,,使程序跳出循环体。
fruits = ["apple", "banana", "cherry", "orange", "pear"]
for fruit in fruits:
if fruit == "orange":
print("找到了橙子!")
break
else:
print("没有找到橙子。")
找到了橙子!
continue **** 结束当前循环剩余语句,继续下一轮循环
# 打印1到10之间的奇数
for i in range(1, 11):
if i % 2 == 0:
continue
print(i)
1
3
5
7
9
pass 在Python中是一个空语句,什么都不做,占位语句, 它的主要目的是为了保持程序结构的完整性。当你在编写代码时,可能只想先搭建起程序的整体逻辑结构,而暂时不去实现某些细节。在这种情况下,你可以使用pass语句来占位,这样就可以避免因为语句块为空而导致的语法错误。pass语句不会执行任何操作,它只是一个空白的语句块。

十、range整数序列
range 表示整数序列
range(5,10)
第一个数字为起始值,第二个数字为结束值,注:结束值不在序列范围内。
for i in range(5,10):
print(i)
5
6
7
8
9
range(5,10,2),range的第三个参数为步长,不指明的时候默认为1
for i in range(5,10,2):
print(i)
5
7
9
十一、while循环

total = 0
i = 1
while i <= 5:
total += i
i += 1
print(total)
15
有明确的循环对象或次数时用for循环。
循环次数未知时用while循环。
本节结束,后续将持续更新,希望读者喜欢支持
更多推荐



所有评论(0)