零基础学 Python:超详细入门教程
本文介绍了 Python 语言的基础知识,包括语言概述、安装配置、基本数据类型(数字、字符串、列表、元组、集合、字典)、代码规范、输入输出、条件判断及循环语句。内容涵盖 Windows、Linux 和 macOS 系统的安装步骤,以及算术运算符、逻辑运算符的使用。通过示例代码演示了变量定义、函数调用、流程控制等核心概念,适合编程初学者系统学习 Python 基础语法与开发环境搭建。

本文介绍了 Python 语言的基础知识,包括语言概述、安装配置、基本数据类型(数字、字符串、列表、元组、集合、字典)、代码规范、输入输出、条件判断及循环语句。内容涵盖 Windows、Linux 和 macOS 系统的安装步骤,以及算术运算符、逻辑运算符的使用。通过示例代码演示了变量定义、函数调用、流程控制等核心概念,适合编程初学者系统学习 Python 基础语法与开发环境搭建。

Python 是一种直译式、面向对象、解释型的脚本语言。它和 Java、C/C++、Go 语言一样都是高级语言,但由于它是解释式语言,所以运行速度会比 Java、C/C++ 等语言慢(虽说 Go 是编译型语言,比它快很多)。不过任何事物有利也有弊,Python 因为自身携带了许多库(如 OS、TCP、Urllib、Turtle),语法简单,第三方库也有很多(如游戏开发所需的 pygame),所以被称为胶水语言,同时也深受开发者青睐。
Python 之父:Guido van Rossum,荷兰人。他也是一个比较传奇的人物,1982 年在阿姆斯特丹大学获得计算机和数学科学硕士学位,1989 年制作 Python,1995 年 Guido van Rossum 从荷兰移民到美国,2005 年在 Google 工作,并用 Python 发明了面向网页的代码浏览工具 Mondrian,之后又开发了 Rietveld。现在在 Dropbox 工作。
基本全能,例如:系统运维、图形处理、数学处理、文本处理、数据库编程、网络编程、Web 编程、多媒体应用、爬虫编写、机器学习、人工智能等。
优点: 免费开源、无社区限制、可开发应用面广、可跨平台、功能强大、自身携带模块多、第三方模块多、语法简单,代码量少可实现多功能等。
例如以下代码实例,按照程序界传统,入门新人写的第一个程序就是输出 Hello World。要是我们用 C 实现:
#include<stdio.h>
int main()
{
printf("Hello world!\n");
return 0;
}
然而我们用 Python:
print('Hello world')
我们可以看出制作同一个程序,运用代码量 Python 远比 C 要少,所以这就是它受广大程序员青睐的原因之一。
缺点: 运行速度远比 C/C++ 等语言要慢等。
在做某事时,即使精通某项技艺,但如果环境配置不当,也难以发挥实力。因此,我们应该如何正确配置 Python 解释器了?下面的方法将会对你正确指导。
IDLE: 官网下载。
点击网址进入官网,搜索 Python 版本。看系统是多少位的就根据多少位选择。下载后点击 Next,根据自己爱好来安装。确认后只需等待一会就可安装完成。
如果不确定是否安装完成,可以在 Command (Cmd) 中输入 python。如果安装成功输出如下版本信息。
如果失败可以尝试一下点击 Repair,修复完后重试通常都能成功。
进入官网后找到 Download PyCharm now,然后找到社区 (Community) 版本下载(专业版需要付费,社区版是免费的)。
根据自己的系统位数选择勾选安装,然后安装 (Install)。下载完后,创建一个新 Project,并选择合适的解释器即可成功。
Linux 系统是为编程而生的,因此绝大多数的 Linux 发行版(Ubuntu、CentOS 等)都默认自带了 Python。有的 Linux 发行版甚至还会自带两个版本的 Python,例如最新版的 Ubuntu 会自带 Python 2.x 和 Python 3.x。
打开 Linux 发行版内置的终端(Terminal),输入 python 命令就可以检测是否安装了 Python,以及安装了哪个版本。
可以看到,python 命令能够正常运行,并输出了 Python 的版本信息,这表明当前的 Linux 发行版已经自带了 Python。
大部分的 Linux 发行版会自带 Python 2.x,但是不一定自带 Python 3.x,要想检测当前 Linux 发行版是否安装了 Python 3.x,可以在终端输入 python3 命令。
如果 python3 命令运行成功,并出现 Python 提示符 >>>,则表明当前 Linux 发行版已经安装了 Python 3 开发环境。
如果当前 Linux 发行版没有安装 Python 3,或者你觉得现有的 Python 3 版本不够新,那么就需要更新 Python 版本。本节我们以 Ubuntu 为例来进行演示。
更新 Python 版本 在 Ubuntu 终端执行以下两条命令即可更新 Python 版本:
sudo apt-get update
sudo apt-get install python3.8
对命令的说明:第一条命令用来指定更新源地址,这样能够保证获得最新的安装包。第二条命令用来指定安装 Python 3.8。
等待以上两条命令执行完成,再次在终端输入 python3 命令,就可以看到 Python 交互式编程环境已经更新到 Python 3.8。
重新安装 Python 如果你的 Ubuntu 中没有 Python 环境,或者你想重新安装,那么就得到官网下载源代码,然后自己编译。
下载源代码 Python 官方下载地址:https://www.python.org/downloads/ 滚动到最后即可看到各个平台的 Python 安装包。找到源码包地址,在'Gzipped source tarball'处单击鼠标右键,从弹出菜单中选择'复制链接地址',即可得到.tgz 格式的源码压缩包地址。 然后执行以下命令:
wget https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tgz
解压源码包:
tar -zxvf Python-3.8.1.tgz
编译 使用 make 工具进行编译:
./configure --prefix=/usr/local
make && sudo make install
这里的 --prefix=/usr/local 用于指定安装目录(建议指定)。如果不指定,就会使用默认的安装目录。
经过以上几个命令,我们就安装好了 Python,这时就可以进入终端,输入 Python 指令,验证是否已安装成功。
小技巧
python 命令默认调用的是 Python 2.x 开发环境,如果你习惯使用 Python 3.x,感觉每次输入 python3 命令有点麻烦,那么你可以修改配置,让 python 命令转而调用 Python 3.x 开发环境。具体命令如下:
sudo unlink /usr/bin/python
sudo ln -s /usr/bin/python3.8 /usr/bin/python
注意,第二条命令中 Python 3.x 的路径和版本一定要正确。
和 Linux 发行版类似,最新版的 Mac OS X 也会默认自带 Python 2.x。
我们可以在终端(Terminal)窗口中输入 python 命令来检测是否安装了 Python 开发环境,以及安装了哪个版本。
python 命令默认指向 Python 2.x 开发环境,如果想检测当前 Mac OS X 是否安装了 Python 3.x,可以在终端(Terminal)窗口中输入 python3 命令。
对于没有安装 Python 3.x 的 Mac OS X,想要安装也非常简单,用户只需要下载安装包,然后一直'下一步'即可,这和 Windows 安装 Python 的过程是非常类似的。
Mac OS X 安装 Python 3.x: Python 官方下载地址:https://www.python.org/downloads/
macOS 64-bit installer 即为 Mac OS X 系统的 Python 安装包。点击该链接,下载完成后得到一个安装包。
双击安装包就进入了 Python 安装向导,然后按照向导一步一步向下安装,一切保持默认即可。
安装完成以后,你的 Mac OS X 上将同时存在 Python 3.x 和 Python 2.x 的运行环境,在终端(Terminal)输入 python 命令将进入 Python 2.x 开发环境,在终端(Terminal)输入 python3 命令将进入 Python 3.x 开发环境。
与 Windows 系统类似,Mac OS 下的 Python 3.x 也会自带 IDLE 简易开发工具,你可以在程序列表中找到它。
在 Python 中,如果想要输出一些特定数据,我们就必须用到 print() 函数。
利用 Print() 函数输出的方法有很多,比如直接输出字符串:
print('Hello, World')
如果觉得无所谓,也可以赋值给变量再输出:
message = 'Hello, World'
print(message)
你也可以把字串符结合再输出:
part1 = 'Hello,'
you = 'World'
print(part1 + you)
或者来点更高阶的,运用自定义函数输出:
def say_hello():
print('Hello, World')
say_hello()
这个输出是运用到自定义函数输出,关于 Python 的函数与内置函数以后会讲。
在 Python 中,数字数据类型有 int、float、bool(布尔型)、complex(复数)。在这里要提醒一下学过 C 语言的人,在 Python 中浮点类型只有单精度 float,不要以为保留两位小数的数就是双精度类型 (double),在 Python 中无论你是多少位小数它的数据类型都是 float。
当然,如果你想判断该数字的数据类型,你可以尝试用 type() 函数来判定,如以下代码实例:
a6, a5, a3, a2, a1 = 4 + 7j, 47.88, 47, 47.8, 47.88888
a4 = False
print(type(a1), type(a2), type(a3), type(a4), type(a5), type(a6))
当然,也可以用 isinstance() 函数来判定,结果返回 True 代表你认为的数据类型是正确的,False 就代表错误。
学完算术运算符后,我们可以与之前学过的数字数据类型来结合使用。
在 Python 中,运算符有:+、-、*、/、%、**、//(加、减、乘、除、取模、次方、整除)。
a = 1314
b = 521
print(a+b, a-b, a*b, a/b, a%b, a**b, pow(a,b), a//b)
在 Python 中,数据类型不仅仅有数字数据类型,当然也有其他的,string(字符串)数据类型也是其中一种。
如果你想换行转义输出,你可以在要转义的字符串之间加个 \n(PS:反斜杠 \ 是特殊转义字符),但在字符串前加个 r 将会是原字符串输出。
a = 'Hello', 'World'
b = 'Hello''World'
# 注意字符串 a 与 b 的区别,如果有逗号,
# 那么输出时将会是两个字符串一起输出,如果
# 没有输出将会两个字符串相互结合输出
c, d = 'Hello', 'World'
print(a)
print(b)
print(c, d)
print(c+d)
print(b[0:-2])
print(c[0:-3])
print(d[0:-1])
print(c*2, d*2) # 各输出两次
print((c+d)*2) # 结合输出两次
print('Hello,\nWorld')
print(r'Hello,World') # 加了 r 后转义字符失效
e = 'Love World 1314'
print(e[0], e[5]) # 输出指定索引位置的字母
print(e[0], e[-2], e[3]) # Python 与 C 语言字符串不同的地方在于 Python 字符串是不可变的,
# 如果向一个指定索引赋值,那么将会错误
在 Python 中,复合数据类型分别有三种:Tuple(元组)、Set(集合)与 List(列表)。然后今天教的复合数据类型就是这三类之中最易的一类:List(列表)。
在 Python 中,创建一个列表数据类型方法如下:
变量名称 = ['数值', '数值']
在列表的数值内容中,数值可以类型不同,但要记住的一点是:除数字以外其他任何数值都必须要用单引号括起(无论是中文还是其他国家语言,都必须要),而数字数值可以不用单引号括起。代码实例如下:
a = ['a', 'b', 'c', 3] # 创建两个列表
b = [4, 7, 'love', 'to', 'world', ',', 'never', 'change']
print(a, b)
print(a[0:1:3]) # 输出指定列表被切割后的指定数据
print(b[1:7])
print(a[3]) # 输出指定索引搜索的数据
print(b[7])
a[0:3] = 'A', 'B', 'C' # 修改列表中指定数据,即可以直接修改
print(a)
b.append(347) # append() 函数用于在制定列表末尾添加新数值
print(b)
a[1] = [] # 移除 a 列表中指定索引数据
print(a)
print('a 列表数据个数:', len(a), 'b 列表数据个数:', len(b)) # len() 函数用于统计列表数据个数
c = [0, 1] # 生成一个嵌入式列表
d = [2, 3]
e = [c, d]
print(e)
在 Python 中,元组的语法与列表差不多,不同之处就是元组使用小括号 (),且括号中元素不能被改变,创建元组可以不需要括号;而列表是使用中括号 []。
因此想要把列表转换为元组或元组转换为列表,只需要改一下括号即可:
变量名称 = ('元素', 元素)
变量名称 = "元素", "元素"
创建元组实例:
a = ('C/c++', 'Python', 2) # 创建两个元组
b = "Python 菜鸟", "Love to world", "never change"
print(a, b)
创建一个空的元组:
a = ()
因为元组与列表语法相似,所以元组可以与其他元组结合为一个新元组并输出:
a = ('C/C++', 'Python', 2) # 创建两个元组
b = "Python 菜鸟", "Love to world", "never change"
c = a + b # 相互结合
print(c)
如果想删除元组,那么可以用 del 语句来实现:
a = ('C/C++', 'Python', 2) # 创建两个元组
b = "Python 菜鸟", "Love to world", "never change"
c = a + b # 相互结合
print(c)
del c
print(c) # 因后元组被删除所以会输出异常
因后元组被删除所以会输出异常。
当然,元组也和字符串一样支持 + 和 * 运算符(具体已在注释表面)。
a = ('C/C++', 'Python', 2) # 创建两个元组
b = "Python 菜鸟", "Love to world", "never change"
c = a + b # 相互结合
print(len(c)) # 输出 c 元组内数据个数
print(c*2) # 复制输出
print(b in ("Python 菜鸟", "Love to world", "never change"))
# 判断元素是否存在
for c in ("Python 菜鸟", "Love to world", "never change", 'C/C++', 'Python', 2):
print(c) # 迭代输出
元组的内置函数(具体在注释):
a = ['C/C++', 'Python', 2, 4] # 创建列表
b = ["Python 菜鸟", "Love to world", "never change"]
c = a + b # 相互结合
c = tuple(c) # 强制转换为元组
print(len(c)) # 输出列表内数据个数
d = ('3', '4', '7')
print(max(d)) # 输出 d 元组内最大数值
print(min(d)) # 输出 d 元组内最小数值,max() 是判断最大值函数,min() 反之
Set(集合)数据类型它和 Tuple、List 一样都属于复合数据类型,而且集合数据类型是一种无序不重复元素的序列。
在 Python 中,我们可以使用大括号 {} 或内置函数 Set() 来创建一个集合(创建一个空集合必须用 Set() 函数,不可用 {},因为 {} 实质是创建一个空的字典)。
格式实例:
a = {'a', 'b', 'c', 'd', 'a'} # 创建集合 a
print(a) # 因为集合是无序不重复元素序列,所以不会输出多出的 a
b = set('sdgsdggfdgdasrfdsf') # 运用 Set() 函数创建集合 b
print(b)
判断元素是否在集合内:
a = {'a', 'b', 'c', 'd', 'a'} # 创建集合 a
print('a' in a, 'e' in a)
在这个代码中代码片段 'a' in a 与 'e' in a 主要判断 a 与 e 元素是否在此集合内,如果在就输出 True,反之位 False。
与 List 与 Tuple 一样,Set 也支持数学运算符运算,不同运算符使用范围也不同:
a = set('sdfygsyfysdgfsdtfsyhf')
b = set('hgdhsdfsghdvhgsfs')
print(a - b)
print(a | b)
print(a & b)
print(a ^ b)
在这里面,减号 (-) 的作用就是输出 a 集合中 b 集合内没有的元素,竖线符号 (|) 主要输出集合 a 或 b 中包含的元素,逻辑符号 (&:and, 和,拉丁美语为 et) 就是要输出集合 a 和 b 中共同包含的元素,乘方 (^) 主要输出不同时包含于 a 和 b 的元素。
在集合中,我们可以使用关键字 add 或 update 来添加新的元素:
b = set('hgdhsdfsghdvhgsfs')
print(b)
b.add('test')
b.update('good')
print(b)
当然,如果想要删除某些元素,可以使用关键字 remove,discard 或 pop(pop 会随机删除某些元素):
b = set('abcdefghijk,test,abats')
print(b)
b.remove('f')
print(b)
b.discard('h')
print(b)
b.pop()
print(b)
在这里 remove 与 discard 分别删除 f 与 h 元素,而 pop 扶着随机删除集合内任意一个元素。
大家仔细观察一下,两次输出虽然因为无序输出导致输出不同,但最后删除的元素都分别不同。
当然,如果觉得删除一个不过瘾,大家可以使用函数 clear() 来进行全部删除:
b = set('abcdefghijk,test,abats')
print(b)
b.clear()
print(b)
在这个代码中第一次输出因为没有使用 clear() 函数清除因此正常输出,而第二次输出使用了 clear() 函数删库跑路了,所以只能输出一个空的集合。因此,输出结果如下:
============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ==============
{'t', 'a', 'k', 'c', 'i', 'j', 'b', 'f', 's', ',', 'd', 'u', 'g', 'e', 'h'}
set()
在 Python 中,字典是另外一种数据储存的可变容器,而且可以存储任何数据类型的数据值对象。
在上一节提及到,创建一个空字典需要用大括号 {},在字典中每一个值对用冒号,且每个值需要逗号 (,) 分隔。
a = {key1:value1, key2:value2, key3:value3}
下面将演示创建一个字典并输出:
a = {'a': 'Python', 'b': '347', 'c': 'hjgjhfgy'} # 创建一个字典
b = {'a': 'HTML/Javascript', 'b': 'Rust'}
print(b)
print(a['a'], a['c'])
在这个代码中 a['a'] 与 a['c'] 是分别访问并输出字典内对应数据值,与索引方式差不多,而 print(b) 则负责输出整个字典 b 内数据。
如果要输出的值字典内没有,那么输出将会显示异常:
a = {'a': 'Python', 'b': '347', 'c': 'hjgjhfgy'} # 创建一个字典
b = {'a': 'HTML/Javascript', 'b': 'Rust'}
print(b)
print(a['a'], a['d'])
输出:
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\新建文件夹\4.py", line 4, in <module>
print(a['a'], a['d'])
KeyError: 'd'
想要修改字典内的数据很简单,与前面的复合数据类型修改方式一样,不过要注意字典修改数据时修改对象填的不是数字,而是对应的名称。
a = {'a': 'Python', 'b': '347', 'c': 'hjgjhfgy'} # 创建一个字典
b = {'a': 'HTML/Javascript', 'b': 'Rust'}
print(b)
print(a['a'], a['c'])
a['c'] = 'Perl'
print(a['a'], a['c'])
清除字典数据也很简单,与集合一样,使用 clear() 函数,然而删除的话就需要用到 del 语句:
a = {'a': 'Python', 'b': '347', 'c': 'hjgjhfgy'} # 创建一个字典
print(a)
a.clear() # 清除字典所有数据
print(a)
del a # 删除字典
print(a)
因为 del 语句把字典删除了,所以输出异常。
输出如下:
{'a': 'Python', 'b': '347', 'c': 'hjgjhfgy'}
{}
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\新建文件夹\4.py", line 6, in <module>
print(a)
NameError: name 'a' is not defined
在平时写代码时,我想有一部分人他们平时可能不会注意代码的整洁性,所以写出来的代码都是一坨坨的,导致自己或他人维护会显得很不方便。例如以下 C 语言迷宫代码:
#include<stdio.h>
#include<stdlib.h>
int map[10][10]={0,0,0,0,0,0,0,0,0,0,
0,1,2,1,0,0,0,0,0,0,
0,1,1,1,0,0,0,0,0,0,
0,0,1,1,0,0,0,0,0,0,
0,0,0,1,0,0,0,0,0,0,
0,0,0,1,0,0,0,0,0,0,
0,0,0,1,1,0,0,0,0,0,
0,0,0,0,1,0,0,0,0,0,
0,0,0,0,1,1,1,1,1,1,
0,0,0,0,0,0,0,0,0,0,};
void DrawMap();
void playGame();
int main(){
while(1){
DrawMap();
playGame();
system("cls");
}
}
void DrawMap(){
int i,j;
for(i=0; i<10; i++){
for(j=0; j<10; j++){
if(map[i][j]==0){
printf("□");
} else if(map[i][j]==1){
printf(" ");
} else{
printf("*");
}
}
printf("\n");
}
}
void playGame(){
char key=getch();
int i,j;
for(i=0;i<10;i++){
for(j=0;j<10;j++){
if(map[i][j]==2){
break;
}
}
if(map[i][j]==2){
break;
}
}
switch(key){
case 'w':
if(map[i-1][j]==1){
map[i][j]=map[i][j]-1;
map[i-1][j]=map[i-1][j]+1;
break;
}
case 's':
if(map[i+1][j]==1){
map[i][j]=map[i][j]-1;
map[i+1][j]=map[i+1][j]+1;
break;
}
case 'a':
if(map[i][j-1]==1){
map[i][j]=map[i][j]-1;
map[i][j-1]=map[i][j-1]+1;
break;
}
case 'd':
if(map[i][j+1]==1){
map[i][j]=map[i][j]-1;
map[i][j+1]=map[i][j+1]+1;
break;
}
}
system("PAUSE");
}
看起来是否觉得舒服很多?想维护的欲望是否增加许多?
当然,在其他语言比如 C/C++ 可能还有可以不遵守代码整洁这首歌唱,但在 Python 这里这首歌可就 Say goodbye 了。因为如果你不遵守代码格式整洁,报错将会可能把你给逼疯。
如以下 Python 代码:
a = '要是时光可以倒流那该多好,要是可以那么就可以多陪一段时间了。'
print(a)
在此代码中,因为变量 a 前面有一个缩进,所以代码在运行时将会报错,无法运行。
如果我们将缩进去掉,那么将可以正常运行代码。
输出如下:
要是时光可以倒流那该多好,要是可以那么就可以多陪一段时间了。
好了,废话不多说,开始进入写法教程。
匈牙利命名法是由 Microsoft 程序员查尔斯 - 西蒙尼 (Charles Simonyi) 提出,匈牙利命名法通过在变量名前面加上相应的小写字母的符号标识作为前缀,标识出变量的作用域,类型等这些符号可以多个同时使用,顺序是先 m_(成员变量),再指针,再简单数据类型,再其它。如 c_MessageBox。
属性 + 类型 + 描述 属性一般是小写字母 + : g:全局变量 m_:类成员变量 s_:静态变量 c_:常量 类型就多了: b:bool sz:以零结束的字符串 p:指针 n:整整 dw:双字 l:长整型 无符号:u 函数:fn
驼峰命名法包含了小驼峰命名法与大驼峰命名法,顾名思义利用了驼峰命名法来命名变量该变量也会有些高低起伏。
小驼峰命名法: 变量名称开头小写,然后后面英文隔一部分后开始大写一个英文字母,如 conTent… 代码实例如下:
conTent = '我的目标就是在这个月突破 100 粉!'
print(conTent)
输出如下:
我的目标就是在这个月突破 100 粉!
大驼峰命名法: 变量开头大写,后面每隔一部分英文后就大写一个英文字母,如 ConTent,FirstName,MessageBox… 代码示例如下:
MessageBox = "我对爱永世不变"
print(MessageBox)
输出如下:
我对爱永世不变
与大驼峰命名法一样,都是开头大写,后面每隔一部分英文后就大写一个英文字母。
MessageBox = "我对爱永世不变"
print(MessageBox)
输出如下:
我对爱永世不变
好了,了解完基本数据类型和代码整洁与流行规范后,现在就开始正式入门吧!
在前文,我们配置好了 Python 的开发环境,了解了 Python 的基本数据类型和代码格式与流行规则后,相信大家对 Python 的基础知识有了一些了解。好了,废话不多说,让我们现在就开始正式入门 Python 吧!
在所有编程语言中,想要输出一组数据值,就必须定义常量与变量。常量嘛,大家就理解为是一个定义名称,且是定死的就行;变量这个东西,它可以是一组数据,一组数字,一组字串符,或者其他的等等。如以下代码示例:
a = 347
b = 'abcd'
在这个代码中,347 与字串符 abcd 就是变量,它们分别通过等于号 (=) 赋值给 a 与 b。不过别以为写到这里运行时就会有结果输出,想要有结果输出,我们还需要用到一个函数:print()。
a = 347
b = 'abcd'
print(a, b)
在这个代码中,我们调用了 print() 函数。在数据值赋值给 a 与 b 后,然后将 a 和 b 传输到 print() 函数中,之后就可以输出结果了。
输出如下:
347 abcd
当然,你也可以偷懒,把数据值直接赋值到 print() 函数中并输出。按照程序界悠久的历史传统,我们编写的第一个程序就是输出 Hello world!。因此,我们想要输出 Hello world!,我们也可以直接赋值到 print() 函数中:
print('Hello world')
在刚刚的代码中,我们将 Hello world!直接赋值入 print 函数中,并让它输出。
输出结果如下:
Hello world!
在 Python 中,如果你想赋值一个字串符变量时(数字也可以,不过有些多此一举),你必须要用单引号 ('') 或双引号 (") 包装你要输出的字串符数据值,否则直接赋值的话该写法是不符合语法的(除数字数据类型以外其他数据类型都一样)。因此,这一章我将会教大家单引号 ('') 或双引号 (") 再用 print() 函数输出。
a = '我的目标是上高中后努力学习,考一所好的大学,拿到一个大厂的 office,给一个好的生活。'
print(a)
a = "我的目标是上高中后努力学习,考一所好的大学,拿到一个大厂的 office,给一个好的生活。"
print(a)
输出结果如下图:
我的目标是上高中后努力学习,考一所好的大学,拿到一个大厂的 office,给一个好的生活。
在这里的例子,我们用到了 '' 或 "" 对字串符进行包装,然后赋值给 a,最后通过 print() 函数进行输出结果。虽然这种方法是比上一章讲到的直接输出复杂了些,但这种方法可比直接传递输出高级多了。
PS:不积跬步,无以至千里;不积小流,无以成江海。做人,不可做井底之蛙,不可做孤陋寡闻之人,因此我们不能因为新方法的复杂而不去学。只有去学习,去汲取新知识,这样才会慢慢进步,成为一个才高八斗、出类拔萃的人。
在 Python 中,如果我们想要输出一段很长的文本,我们可以选择直接赋值在一个常量中并且输出,当然也可以选择赋值在多个常量中在最后结合输出。然而我们想要实现这种效果,在这里我们就必须要用到一个算术运算符:+。如下面代码例子:
a = "我的目标是上高中后努力学习,"
b = "考一所好的大学,"
c = "拿到一个大厂的 office,给一个好的生活。"
print(a+b+c)
输出结果如下:
我的目标是上高中后努力学习,考一所好的大学,拿到一个大厂的 office,给一个好的生活。
前文我已教大家如何赋值并且输出,现在我将教大家如何输入赋值至常量并输出。
在平时许多软件或其他东西中,想要得到一个想要的结果,就必须输入一些数据值使满足运行条件,如生活中的计算器、或者我们的浏览器等。然而我们在 Python 中如何实现这种效果了?这时我们就要用到一个函数–input()。具体例子如下:
a = input()
print(a)
如果我这时输入一组字串符:算了,还是做回我的前端开发这个老本行吧。输出结果如下:
算了,还是做回我的前端开发这个老本行吧。
在这个代码中,实现原理就是通过 input() 函数获取我输入的数据值,然后把这组数据赋值给常量 a,然后常量 a 把数据传递给 print() 函数,最终输出。
当然,我们也可以结合前面我们所学过的算术运算符与 float 数据类型做一个超简易计算器(由于是最基础的,所以使用较麻烦):
a = input()
b = input("请输入运算符号")
c = input()
if (b == '+'):
print(float(a)+float(c))
elif (b == '-'):
print(float(a)-float(c))
elif (b == '*'):
print(float(a)*float(c))
elif (b == '/'):
print(float(a)/float(c))
elif (b == '%'):
print(float(a)%float(c))
elif (b == '**'):
print(float(a)**float(c))
elif (b == '//'):
print(float(a)//float(c))
当我输入 22/7 时,输出如下:
3.142857142857143
当然,input() 函数作为一个万能的输入函数,他也可以和其他数据类型相结合,如集合,列表,元组等藕合数据类型,也可以与字典,字串符等数据类型结合使用。如下面例子:
a = (str(input()))
b = (list(input())) # 创建一个空列表
c = (tuple(input())) # 创建一个空元组
d = (set(input())) # 创建一个空集合
e = {} # 创建一个空字典
e_ElementName = input("请输入名称:")
e_ValueContent = input("请输入内容:")
e[e_ElementName] = e_ValueContent
print("您输入的字串符:", a)
print("列表结果:", b)
print("元组结果:", c)
print("集合结果:", d)
print("字典结果:", e)
代码原理:通过运用 input() 函数对创建的各个数据类型与其对应的常量赋值,并传递给相对应的 print() 函数,最后输出结果。
在所有编程语言中与我们平时写的很多程序中,我们几乎都要运用到判断语句,通过判断语句来帮助我们写的这个程序判断是否达到某个代码块运行的条件。因此我们想实现判断条件是否符合某个代码块运行的条件,那么我们就需要运用到判断语句。在 Python 中,判断语句有 if、if…else、if…elif…else。关键词有 or 与 and。
那么现在我们先从最基础的 if 语句先开始吧。
具体例子代码如下:
me = int(input())
wl = int(input())
if me < wl :
print("WL 赢了")
if me > wl :
print("我赢了")
代码原理:假如我和 WL 各输入一个数字,如果 WL 输入的数字大于我条件为真,输出 wl 赢了;如果我输入的数字大于 WL,条件为虽然也为真,但输出的是与之相对应的结果语句。
具体代码例子如下:
me = int(input())
wl = int(input())
if me < wl :
print("WL 赢了")
else :
print("我赢了")
代码原理:假如我和 XX 各输入一个数字,如果 XX 输入的数字比我大,条件为真,输出 XX 赢了。反之,条件为假,输出我赢了。
me = int(input())
wl = int(input())
if me < wl :
print("WL 赢了")
elif me == wl :
print("打平手了")
else :
print("我赢了")
代码原理:假如我和 XX 各输入一个数字,如果 XX 的比我大,条件为真,输出 XX 赢了。如果相同,条件为方案 2,输出打平手了。反之,输出我赢了。
好了,学完 if…elif…else 语句,我们可以尝试做一个猜数小游戏了,具体例子如下:
import random
a = True
while a:
b = int(random.random())
c = int(input("猜数小游戏:请输入一个数字,看一下你猜不猜的中"))
if c == b :
print("恭喜你猜中了")
elif c > b :
print("输入的数字太大了,再来一次")
elif c < b :
print("输入的太小了,再输入大一点的数字,再来一次")
代码原理:通过运用 random 模块(以后会在模块章节详讲)来调用 random 函数,从而生成随机数字并赋值给判断语句来判断。如果玩家输入的数字刚好时随机数,条件为真,输出恭喜你猜中了。反之,如果大于随机数。输出输入的数字太大了,再来一次;小于,输出输入的太小了,再输入大一点的数字,再来一次。
原理:我们输入两个变量条件,如果两个条件均符合,条件为真,输出方案 1 或方案 2;如果不符合,条件为假,输出方案 3。具体例子如下:
me = int(input())
wl = int(input())
if me == 520 and wl == 520 :
print("就知道你爱我。")
else :
print("这不是你的真心话。")
me = int(input())
wl = int(input())
if me == 520 and wl == 520 :
print("就知道你爱我。")
elif me == 1314 and wl == 1314 :
print("我会一生一世爱你,不仅与你白头到老,而且 never change。")
else :
print("这不是你的真心话。")
原理:我和 LXX 各输入一个变量条件,如果有一个条件符合已定的条件,为真,输出方案 1 或 2;为假,输出方案 3。具体例子如下:
me = int(input())
wl = int(input())
if me == 520 or wl == 520 :
print("就知道你爱我。")
else :
print("这不是你的真心话。")
me = int(input())
wl = int(input())
if me == 520 or wl == 520 :
print("就知道你爱我。")
elif me == 99 or wl == 99 :
print("不错")
else :
print("这不是你的真心话。")
< :小于,用于判断变量是否小于常量
> : 大于,用于判断变量是否大于常量
>= :大于或等于,用于判断变量是否大于或等于常量
<= :小于或等于,用于判断变量是否小于或等于常量
== :等于,用于判断两个常量是否相等
!= :不等于,用于判断两个常量是否不等于
代码原理:我和 LXX 各输入一个变量条件,如果变量条件为我为 520,XX 不为 520,则输出方案一;如果变量条件为 6(5< me and xx <7)时,输出方案二;如果变量条件为 64<=me and XX <=103 时,输出方案三;如果均为 1314,则输出方案四。代码示例如下:
while True:
me = int(input())
wl = int(input())
if me ==520 and wl != 520:
print('这不是你的真心话')
elif me > 5 and wl < 7:
print('我跟你的相遇就像是酸遇上了碱,我们彼此中和,释放出了热与激情。')
print('我对你的感情就像是钡离子与硫酸根的完美结合,生成了美好的感情沉淀。')
print('我知道你的未来就像是 Li Na K Ru Cr Ba Ca Sr 的焰色反应一样五彩缤纷,最后希望你能像王水一样所向无敌,溶解掉所有的困难,走向成功。')
elif me >= 64 and wl <= 103:
print('我爱你,我会爱你爱到 CuSO4 + Ba(OH)2=BaSO4↓+Cu(OH)2 ↓这两个产物无法分离提纯。')
elif me and wl == 1314:
print('我夺走了你的电子,请不要生气,我是为了更稳定的跟你结合在一起.')
效果图如下:
在所有编程语言中与我们平时写的很多程序中,我们很多时候需要运用到循环语句,通过循环语句可以帮助我们在程序执行时循环某一个条件以保证程序正常运行,或者循环输出某一个常量,达到程序多输出效果。因此我们想实现上述条件时,我们就需要运用到循环语句。在 Python 中,循环语句有 for 和 while。PS:Python 中没有 do …while 循环语句!
在 Python 中,for 循环可以遍历任何可迭代对象,如一个列表或者一个字符串。(就是按顺序输出常量元素啦!)for 循环语句具体格式如下:
for 变量 in 顺序:
声明
例:
for i in range(list(8)):
print(i)
具体代码例子如下:
字串符
a = '546dsf6d6sf74ds'
for i in range(len(a)):
print(i, ':', a[i])
代码原理:先通过 len() 函数获取字串符长度,然后通过 for 循环与 range() 函数对其进行遍历与循环处理,最后输出每个长度位置对应的字串符结果。
列表
list = ['a', 5, 65, 654, 6545, 4, 464, 4, ':', 4, 48789,]
for i in range(len(list)):
print(i, ':', list[i])
代码原理:与字串符一样。
至此,我们已经完成了 Python 基础入门的学习。本章涵盖了 Python 的核心概念,包括环境搭建、基本数据类型、流程控制及代码规范。
学习总结:
后续学习建议: 在完成基础语法的学习后,建议继续深入学习以下内容以提升编程能力:
希望本文能为你开启 Python 编程之旅提供坚实的基础。持续练习与实践是掌握编程的关键。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online