Python入门教程(从小白到高级)(新版)

Python入门教程(从小白到高级)(新版)Python 从一无所知到精通 新版 吐槽 Hello everyone 经历完广东中考折磨的我回来啦 不得不说这届广东考生真的有些困难 先后经历了疫情 然后这次中考又来了一份折磨人的数学试卷 初高中衔接 难度我也觉得有些大 最后我也不多说了 但愿看到这篇教程的广东初三中考生知道过去的都过去了 不要再这么纠结与郁闷 人生路漫漫 不必因为数学失利而感到绝望 毕竟你难别人也会觉得难 你死了别人也可能跟你一样陪葬 收拾好行装 整理好心态 重新出发 活在当下 为未来努力奋斗才是实在 同时也祝愿广州考生能在七月的中

Python入门教程 非常详细(从小白到高级)(新版)

PS:欢迎大家来学习本教程,如果有什么不会的欢迎留言,我将随时解答;如果有不足之处欢迎大家留言,同时我欢迎大家来喷不足之处并提出建议,以方便修改。希望大家看完后觉得不错多多分享给他人,让他人也学习一下新的知识–Python菜中菜的菜鸟注2021.7.10

目录:基础

第一章-第五章(5.1-5.4):简介、配置与基础知识
第六章:判断语句

第一章:Python的概述

1.1:什么是Python?

Python它是一种直译式,面向对象,解释式的脚本语言。它和Java,C/C++,Go语言一样都是高级语言,但由于它是解释式语言,所以运行速度会比Java,C/C++等语言慢(虽说隔壁Go也是解释式语言,但比它快很多)。不过任何事物有利也有弊,Python因为自身携带了许多库(如:OS、TCP、Urllib、Trutle),语法简单,第三库也有很多(如飞机大战所需的pygame),所以被称为胶水语言,同时也深受开发者青眯。

1.2:Python之父与简介

Python之父:Guido van Rossum,荷兰人。他也是一个比较传奇的人物,1982年 在阿姆斯特丹大学获得计算机和数学科学硕士学位 ,1989年制作Python,1995年Guido van Rossum从荷兰移民到美国,2005年在Google工作,并用Python发明了面向网页的代码浏览工具Mondrian,之后又开发了Rietveld。现在在Dropbox工作。

1.3:Python应用范围

基本全能,例如:系统运维、图形处理、数学处理、文本处理、数据库编程、网络编程、web编程、多媒体应用、pymo引擎、黑客编程、爬虫编写、机器学习、人工智能等。

1.4:Python优缺点

#include 
     int main() { 
    printf("Hello world!\n"); return 0; } 

然而我们用Python

def print()return print print('Hello world') 

或者更简单

print('Hello world') 

第二章:安装与配置Python IDE

在古代战场上,一把趁手的武器与士兵精湛的武术、将军正确的指挥,相辅相成,相得益彰,这样胜率往往会提高很多。在做某爱时,即使女方精通某爱技艺,身材妩媚妖娆的妹子,但如果你的烧火棍很小,那么你将不能满足她,然后就可能会造成伴侣之间某冷淡。但如果你的烧火棍犹如定海神针般,那么你将可以给予她*方面的满足,同时也增进了伴侣间的感情(开始正儿八经的胡说八道)…这些道理放到配置Python解释器方面也同样适用。因此,我们应该如何正确配置Python解释器了?下面的方法将会对你正确指导。

Windows(Python 3.8.9)

PyCharm(官网:https://www.jetbrains.com/pycharm/)

Linux与Mac OS

Linux

打开 Linux 发行版内置的终端(Terminal),输入python命令就可以检测是否安装了 Python,以及安装了哪个版本,如下所示:

[c.biancheng.net@localhost ~]$ python Python 2.7.5 (default, Jun 17 2014, 18:11:42) [GCC 4.8.2  (Red Hat 4.8.2-16)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> 

可以看到,python命令能够正常运行,并输出了 Python 的版本信息,这表明当前的 Linux 发行版已经自带了 Python 2.7.5。

大部分的 Linux 发行版会自带 Python 2.x,但是不一定自带 Python 3.x,要想检测当前 Linux 发行版是否安装了 Python 3.x,可以在终端`

(Terminal)输入python3命令,如下所示: [c.biancheng.net@localhost ~]$ Python3 Python 3.6.4 (default , Nov 18 2018 , 13:02:36) [GCC 4.8.2  (Red Hat 4.8.2-16)] on linux2 Type "help","copyright","credits" or "license" for more information. >>> 

如果python3命令运行成功,并出现 Python 提示符>>>,则表明当前 Linux 发行版已经安装了 Python 3 开发环境,只需执行python3命令就可以启动 Python 3 开发环境。

$sudo apt-get update $sudo apt-get install python3.8 
  1. 下载源代码
    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 
  1. 编译
    使用 make 工具进行编译:

$ ./configure --prefix=/usr/local $ make&&sudo make install 

这里的–prefix=/usr/local用于指定安装目录(建议指定)。如果不指定,就会使用默认的安装目录。

$sudo unlink /usr/bin/python $sudo ln -s /usr/bin/python3.8 /usr/bin/python 

注意,第二条命令中 Python 3.x 的路径和版本一定要正确。

上述命令执行完成以后,再次在终端输入python命令,进入的就是 Python 3.8 的交互式开发环境了。

Mac OS

和 Linux 发行版类似,最新版的 Mac OS X 也会默认自带 Python 2.x。

打开链接,可以看到各个版本的 Python:

双击 python-3.8.1-macosx10.9.pkg 就进入了 Python 安装向导,然后按照向导一步一步向下安装,一切保持默认即可。

第三章:Python基础

3.1: Python的输出(略讲,第五章将会与输入一同详细讲)

print('LWL我喜欢你,可不可以做我女朋友呀?') 

如果觉得无所谓,也可以

Loveyou='LWL我喜欢你,可不可以做我女朋友呀?' print(Loveyou) 

你也可以把字串符结合再输出

Love='LWL我喜欢你,' you='可不可以做我女朋友呀?' print(Love + you) 

或者来点更高b格的

def Loveyou1314(): print('LWL我喜欢你,不知你可不可以做我女朋友') Loveyou1314() 

这个输出是运用到自定义函数输出,关于Python的函数与内置函数以后会讲。

3.2: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)) 
a6,a5,a3,a2,a1=4 + 7j,47.88 ,47 ,47.8 ,47.88888 a4=False print("Type a1:",type(a1),isinstance(a1, type(a1)),) print("Type a2:",type(a2),isinstance(a2, type(a2)),) print("Type a1\3:",type(a3),isinstance(a3, type(a3)),) print("Type a4:",type(a4),isinstance(a4, type(a4)),) print("Type a5:",type(a5),isinstance(a5, type(a5)),) print("Type a6:",type(a6),isinstance(a6, type(a6)),) 

3.2.1:算术运算符

a = 1314 b = 521 print(a+b,a-b,a*b,a/b,a%b,ab,pow(a,b),a//b,) 

3.3:Python数据类型(字串符:string)

a = 'Hello','LWL' b = 'Hello''LWL' #注意字串符a与b的区别,如果有逗号, #那么输出时将会是两个字串符一起输出,如 #果没有输出将会两个字串符相互结合输出 c,d= 'Hello','LWL' 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,\nLWL') print(r'Hello,LWL')#加了r后转义字符失效 e='Love LWL 1314' print(e[0],e[5])#输出指定索引位置的字母 print(e[0],e[-2],e[3])#Python与C语言字串符不同的地方在于Python字串符是不可以被改变的, #如果向一个指定索引赋值,那么将会错误 

3.3:Python数据类型(列表:List)

变量名称 = ['数值',数值] 
a = ['a','b','c',3] #创建两个列表 b = [4,7,'love','to','lwl',',','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) 

3.4:Python数据类型(Tuple:元组)

变量名称 = ('元素',元素) 变量名称 = "元素","元素" 

创建元组实例

a = ('C/c++','Python',2) #创建两个元组 b = "Python菜中菜的菜鸟","Love to lxx for Li wenli","never change" print(a,b) 

创建一个空的元组

a = () 

因为元组与列表语法相似,所以元组可以与其他元组结合为一个新元组并输出

a = ('C/C++','Python',2) #创建两个元组 b = "Python菜中菜的菜鸟","Love to lxx for Li wenli","never change" c = a+b #相互结合 print(c) 

如果想删除元组,那么可以用del语句来实现

a = ('C/C++','Python',2) #创建两个元组 b = "Python菜中菜的菜鸟","Love to lxx for Li wenli","never change" c = a+b #相互结合 print(c) del c print(c) 

因后元组被删除所以会输出异常

在这里插入图片描述

当然,元组也和字串符一样支持+和*运算符(具体已在注释表面)

a = ('C/C++','Python',2) #创建两个元组 b = "Python菜中菜的菜鸟","Love to lxx for Li wenli","never change" c = a+b #相互结合 print(len(c))#输出c元组内数据个数 print(c*2)#复制输出 print(b in ("Python菜中菜的菜鸟","Love to lxx for Li wenli","never change")) #判断元素是否存在 for c in ("Python菜中菜的菜鸟","Love to lxx for Li wenli","never change",'C/C++','Python',2): print(c,) #迭代输出 

元组的内置函数(具体在注释

a = ['C/C++','Python',2,4] #创建列表 b = ["Python菜中菜的菜鸟","Love to lwl for Li wenli","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()反之 

3.5:Python数据类型(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 = set('sdfygsyfysdgfsdtfsyhf') b = set('hgdhsdfsghdvhgsfs') print(a - b) print(a | b) print(a & b) print(a ^ b) 
b = set('hgdhsdfsghdvhgsfs') print(b) b.add('fuck') b.update('good') print(b) 

输出结果,大家对照会发现,每次输出都会有不同的新元素输出

============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ============== { 
   'h', 'g', 'f', 's', 'v', 'd'} { 
   'h', 'fuck', 'g', 'f', 's', 'v', 'o', 'd'} 

当然,如果想要删除某些元素,可以使用关键字remove,discard或pop(pop会随机删除某些元素)

b = set('abcdefghijk,fuck,abats') print(b) b.remove('f') print(b) b.discard('h') print(b) b.pop() print(b) 

在这里remove与discard分别删除f与h元素,而pop扶着随机删除集合内任意一个元素

============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ============== { 
   'j', 't', 'h', 'k', 'b', 'd', 's', 'f', 'g', 'i', ',', 'a', 'c', 'e', 'u'} { 
   'j', 't', 'h', 'k', 'b', 'd', 's', 'g', 'i', ',', 'a', 'c', 'e', 'u'} { 
   'j', 't', 'k', 'b', 'd', 's', 'g', 'i', ',', 'a', 'c', 'e', 'u'} { 
   't', 'k', 'b', 'd', 's', 'g', 'i', ',', 'a', 'c', 'e', 'u'} >>> ============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ============== { 
   'e', 'd', 's', 'g', 'h', 'b', 'c', 'i', 'f', 'k', 'u', 'j', 'a', ',', 't'} { 
   'e', 'd', 's', 'g', 'h', 'b', 'c', 'i', 'k', 'u', 'j', 'a', ',', 't'} { 
   'e', 'd', 's', 'g', 'b', 'c', 'i', 'k', 'u', 'j', 'a', ',', 't'} { 
   'd', 's', 'g', 'b', 'c', 'i', 'k', 'u', 'j', 'a', ',', 't'} >>> 
b = set('abcdefghijk,fuck,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() >>> 

3.6:Python数据类型(字典:dictionary)

a = { 
   key1:value1,key2:value2,key3:value3} 
dictionary{key->1value1 key2->value2 key3->value3 

下面将演示创建一个字典并输出

 python 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内数据。 输出结果 python ============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ============== {'a': 'HTML/Javascript', 'b': 'Rust'} Python hjgjhfgy 

如果要输出的值字典内没有,那么输出将会显示异常。

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']) 

输出

============== RESTART: C:\Users\Administrator\Desktop\新建文件夹\4.py ============== { 
   'a': 'HTML/Javascript', 'b': 'Rust'} Python hjgjhfgy Python Perl 

清除字典数据也很简单,与集合一样,使用clear()函数,然而删除的话就需要用到del语句

a = { 
   'a':'Python','b':'347','c':'hjgjhfgy'}#创建一个字典 print(a) a.clear()#清除字典所有数据 print(a) del a#删除字典 print(a) 
{ 
   '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 

第四章:代码格式整洁与三种流行编程规则

4.1:格式整洁

在平时写代码时,我想有一部分人他们平时可能不会注意代码的整洁性,所以写出来的代码都是一坨坨的,导致自己或他人维护会显得很不方便。例如以下C语言迷宫代码

#include 
    #include 
    #include 
     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;}} 

因为字数限制导致无法显示完全,但从这一部分代码可以看出此代码非常不美观且难以维护。但如果我们加入缩进与换行

#include 
    #include 
    #include 
     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"); } 
 a = '要是时光可以倒流那该多好,要是可以那么就可以多陪汶励一段时间了。' print(a) 
要是时光可以倒流那该多好,要是可以那么就可以多陪汶励一段时间了。 

好了,废话不多说,开始进入写法教程

4.2:编程规则

匈牙利命名法

匈牙利命名法是由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粉! 
MessageBox = "我对汶励的爱永世不变" print(MessageBox) 

输出如下

我对汶励的爱永世不变 

帕斯卡命名法

与大驼峰命名法一样,都是开头大写,后面每隔一部分英文后就大写一个英文字母

MessageBox = "我对汶励的爱永世不变" print(MessageBox) 

输出如下

我对汶励的爱永世不变 

第五章:正式入门Python

在前文,我们配置好了Python的开发环境,了解了Python的基本数据类型和代码格式与流行规则后,相信大家对Python的基础知识有了一些了解。好了,废话不多说,让我们现在就开始正式入门Python吧!

5.1:print()函数讲解

在所有编程语言中,想要输出一组数据值,就必须定义常量与变量。常量嘛,大家就理解为是一个定义名称,且是定死的就行;变量这个东西,它可以是一组数据,一组数字,一组字串符,或者其他的等等。如以下代码示例

a = 347 b = 'abcd' 

在这个代码中,347与字串符abcd就是变量,它们分别通过等于号(=)赋值给a与b。不过别以为写到这里运行时就会有结果输出,想要有结果输出,我们还需要用到一个函数:print()。

a = 347 b = 'abcd' print(a,b) 
347 abcd 

当然,你也可以偷懒,把数据值直接赋值到print()函数中并输出。按照程序界悠久的历史传统,我们编写的第一个程序就是输出Hello world!。因此,我们想要输出Hello world!,我们也可以直接赋值到print()函数中

print('Hello world') 
Hello world! 

5.2:利用单引号(‘’)或双引号(“”)包装并输出

在Python中,如果你想赋值一个字串符变量时(数字也可以,不过有些多此一举),你必须要用单引号(‘’)或双引号(“”)包装你要输出的字串符数据值,否则直接赋值的话该写法是不符合语法的(除数字数据类型以外其他数据类型都一样)。因此,这一章我将会教大家单引号(‘’)或双引号(“”)再用print()函数输出

a = '我的目标是上高中后努力学习,考一所好的大学,拿到一个大厂的office,给汶励一个好的生活。' print(a) 
a = "我的目标是上高中后努力学习,考一所好的大学,拿到一个大厂的office,给汶励一个好的生活。" print(a) 

输出结果如下图

我的目标是上高中后努力学习,考一所好的大学,拿到一个大厂的office,给汶励一个好的生活。 

5.3:输出结合

在Python中,如果我们想要输出一段很长的文本,我们可以选择直接赋值在一个常量中并且输出,当然也可以选择赋值在多个常量中在最后结合输出。然而我们想要实现这种效果,在这里我们就必须要用到一个算术运算符:+。如下面代码例子

a = "我的目标是上高中后努力学习," b = "考一所好的大学," c = "拿到一个大厂的office,给汶励一个好的生活。" print(a+b+c) 

输出结果如下

我的目标是上高中后努力学习,考一所好的大学,拿到一个大厂的office,给汶励一个好的生活。 

5.4:输入与输出

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.7143 

当然,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()函数,最后输出结果。

第六章:判断语句

6.1:if的用法

具体例子代码如下:

me =int(input()) wl = int(input()) if me < wl : print("Lwl赢了") if me > wl : print("我赢了") 

代码原理:假如我和WL各输入一个数字,如果WL输入的数字大于我条件为真,输出wl赢了;如果我输入的数字大于WL,条件为虽然也为真,但输出的是与之相对应的结果语句。

6.2: if…else的用法

具体代码例子如下:

me = int(input()) wl = int(input()) if me < wl : print("WL赢了") else : print("我赢了") 

代码原理:假如我和XX各输入一个数字,如果XX输入的数字比我大,条件为真,输出XX赢了。反之,条件为假,输出我赢了。

6.3:if…elif…else用法

me = int(input()) wl = int(input()) if me < wl : print("WL赢了") elif me == WL : print("打平手了") else : print("我赢了") 
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函数,从而生成随机数字并赋值给判断语句来判断。如果玩家输入的数字刚好时随机数,条件为真,输出恭喜你猜中了。反之,如果大于随机数。输出输入的数字太大了,再来一次;小于,输出输入的太小了,再输入大一点的数字,再来一次。

6.4:and的用法

原理:我们输入两个变量条件,如果两个条件均符合,条件为真,输出方案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("这不是你的真心话。") 

:6.5:or的用法

原理:我和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("这不是你的真心话。") 

6.6:操作运算符(补充点)

< :小于,用于判断变量是否小于常量 > : 大于,用于判断变量是否大于常量 >= :大于或等于,用于判断变量是否大于或等于常量 <= :小于或等于,用于判断变量是否小于或等于常量 == :等于,用于判断两个常量是否相等 != :不等于,用于判断两个常量是否不等于 

代码原理:我和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循环语句!

7.1:for循环语句

在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]) 
list = ['a',5,65,654,6545,4,464,4,':',4,48789,] for i in range(len(list)): print(i,':',list[i]) 

7.2:While循环语句

下周周六更新while循环以及与其结合–作者注

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/174029.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月27日 上午7:22
下一篇 2026年3月27日 上午7:22


相关推荐

  • 异步FIFO原理

    异步FIFO原理异步 FIFO 原理一 FIFO 概念及用途 FIFO 即英文 FirstInFirst 的缩写 是一种先进先出的数据缓存器 与普通存储器的区别是没有外部读写地址线 这样使用起来非常简单 但缺点就是只能顺序写入数据 顺序的读出数据 其数据地址由内部读写指针自动加 1 完成 不能像普通存储器那样可以由地址线决定读取或写入某个指定的地址 按读写是否为相同时钟域分为同步和异步 FIFO 这里介绍异步 FIFO 主要用于跨时钟域传输数据

    2026年3月17日
    2
  • 关于stm32的智能车硬件设计_stm32小车前进程序

    关于stm32的智能车硬件设计_stm32小车前进程序目录1.硬件整体逻辑二级目录三级目录1.硬件整体逻辑二级目录三级目录

    2022年10月10日
    4
  • java中json字符串和java对象的转换「建议收藏」

    java中json字符串和java对象的转换「建议收藏」文章目录1、Java与前台的交互2、解析JSON的第三方工具3、JSON数据和Java对象的相互转换Java对象转换JSON字符串JSON字符串转为Java对象1、Java与前台的交互作为后台,Java不仅需要接收前台传递过来的数据,还需要将数据库中的数据查出来打包好发…

    2025年11月12日
    2
  • Pycharm我认为最好看,最舒服的主题配色和字体设置

    Pycharm我认为最好看,最舒服的主题配色和字体设置File->Settings,如下图所示设置主题Editor->ColorScheme->Python,如下图所示,在右侧第一个框中下拉选择Twilight。这个主题看着就很舒服。设置字体Editor->General->Font,在右侧的Fonts是选择字体样式为Monospaced,大小Size设为18,行间距Linespacing设为1.2这样就设置完成啦!大概是这个样子,有没有觉得看起来hen舒服。如果有觉得更好的主题样式,欢迎大家一起来分享。

    2022年8月25日
    10
  • 用c语言做简单动画_用C语言编写动画

    用c语言做简单动画_用C语言编写动画你的意思还是不太明白我这有个程序你看看能不能帮我改一下#include#include#definePI3.14intcxClient,cyClient;floati,j,x,y;LRESULTCALLBACKWndProc(HWND,UINT,WPARAM,LPARAM);intWINAPIWinMain(HINSTANCEhInstance,…

    2022年8月12日
    7
  • PyCharm三种解释器的区别(virtual Enviroment, system interpreter, conda Enviroment)

    PyCharm三种解释器的区别(virtual Enviroment, system interpreter, conda Enviroment)刚开始用 Pycharm 的时候 选择 projectinter addlocal 的时候有 virtualEnvir systeminterp conda nbsp Enviroment 选项不知道什么意思 百度学习了后过了一段时间忘了 一个项目用的是以前的一个项目的 virtualEnvir 一直导包出错 还卸了重新装了一边 写下区别以后学习 syst

    2026年3月27日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号