首页 > 编程语言 >大白话python——下

大白话python——下

时间:2024-09-11 19:52:44浏览次数:11  
标签:语句 文件 大白话 num2 python 运算符 print num1

书接上回,本文将讨论以下几点,请看目录

5.7 运算符

5.7.1算数运算符

运算符含义举例
+1+1
-1-1
*1*1
/1/1
//整除5//2 结果等于2
%取余3%2 结果等于1
**指数1**2 表示1 的二次方
()括号(1+2)**3

这些算数运算符其实在我们之前的求学生涯中早已见过,而较为特殊的——整除 在python当中取值规则为向下取整,就像例子中的 5//2 的计算值为2 。

当然这些运算符也存在优先级:

() 高于 ** 高于 * / // % 高于 + -

5.7.2 赋值运算符

在上册中,我们提及到计算机的 == 是判断两端是否相等的符号,而 = 才是用于赋值作用的运算符。而计算机中的赋值与我们日常习惯的从左到右不同,相反地赋值是从右往左。

num1=1
num2=2  #给变量num1 和 num2 赋值
print(num1)	 # 1 	
print(num2)  # 2 
print(num1==num2) # False

但是我们会发现,一行只能个一个变量赋值,是不是代码看起来有点繁琐了? 那接下来介绍一种多变量赋值。

num1,string1,float1=6,'fdt',3.14
print(num1, string1,float1)
# 6,'fdt',3.14

这样看起来就相对简洁点。如果我们想对不同变量进行相同赋值,又该怎么办呢?请看下面的例子。

a=b=100
print(a,b)

5.7.3 复合赋值运算符

简单来讲就是 结合上面算数运算符赋值运算符两者,起到简便代码与方便运算的作用。

运算符介绍解释
+=加一个数a+=1相当于 a=a+1
-=减一个数a-=1 相当于 a=a-1
*=乘一个数a*=1 相当于 a=a*1
/=除以一个数a/=1 相当于 a=a/1
//=整除一个数a//=1 相当于 a=a//1
%=对一个数取余a%=1 相当于 a=a%1
**=取一个数的次方a**=1 相当于 a=a**1

更详细地解释 就是对a的值 修改后 再赋值给a

# 每段代码都是基于lys=18,而一起运行的时候并不为对于的结果
lys=18

lys+=1
print(lys) # 19

lys-=1
print(lys) # 17

lys*=2     #lys=lys*2
print(lys) # 36

5.7.4 比较运算符

比较运算符 就是结合大小于号与赋值符号的复合运算符。返回值就是前面提及的布尔类型(Ture、False)

运算符解释
>左值是否大于右值
<左值是否小于右值
==左右是否相等
!=左右是否不等
>=左值是否大于或等于右值
<=左值是否小于或等于右值

下面来看些例子。

a=5
b=9

print(a<b)  #Ture

print(a>b)	#Flase

print(a==b)	#Flase

print(a!=b)	#True

print(a>=b)	#False

print(a<=b)	#True

要注意的 像 != 是当两边不等的时候为True,反之为False。而像 >=<= 这两个 存在一个或的关系,就是小于(大于)的情况成立和 等于的情况两者其一符合,即为True(有没有可能两个都符合呢?)。

5.7.5 逻辑运算符

跟比较运算符相类似的,逻辑运算符的返回值亦为布尔类型。

运算符表达式解释
anda and b两者都
ora or b其中之一
notnot a
ina in b在其中

接下来通过例子给大家详细解读。

num1=10
num2=16
num3=18

print((num1<num2) and (num2<num3)) # True
print((num1>num2) and (num2<num3)) # Flase
print((num1>num2) or (num2<mnum3))  # True
print((num1<num2) and (num2<num3) and (num1<num3)) #True

我们可以看到举例中,通过and语句链接的全部表达式都为正确的情况下才会返回True。而or语句则是任意一个表达式正确则返回True。如果判读语句中又有or又有and语句的话,又该如何呢留给大家思考。

5.8 条件语句

条件语句顾名思义,需要存在一个判断条件,拿人话讲就是:凡事都有个是非对错,因此条件语句的返回值通常是布尔类型(True 或 False)。

5.8.1 if语句格式

对于格式而言,缩进很重要,这意味着 语句是否在上一 if语句
if 条件语句:

  条件成立时执行的代码

num=9
if num<3:
	print('num smaller than 3')
print(num)
# 9

如例子中所展现的,无论num是否大于3 ,最后的print语句都会执行,所以缩进很重要,因为这表示归属问题。

5.8.2 条件语句举例

num1=10
if num1>2:
	print('number is bigger than 2')
# number is bigger than 2

例子非常的简单,但是大家应该也发现了问题。万一,不符合条件怎么办? 小问题,python或者其他语言早已帮你想好对策,那就是else语句

我的班长喜欢小美,他给小美表白,小美便有两种选择,答应班长或者拒绝班长。这就是if-else语句的现实举例。下面来看代码。

num2=910
if num2<909:
	print('num2 is smaller than 909')
else :
	print('num2 is biiger than 909')
# 'num2 is bigger than 909'

是的,当num2 进入条件语句中,先执行 num2 是否小于909 的判断语句 ,如果该语句为True(num2<909成立)则执行if语句后的指令 ;当该语句为
False( num2 <909 不成立 也就是说 num2 是大于或等于909的),则执行else语句后的指令。

当然也会存在条件语句不止一个的情况,所以还有一个语句就是elif语句,展开来讲的就是 else-if,表示另外一个条件 。直接看例子:

num3=75
if num3<60:
	print('不及格')
elif num3>60 and num3<80:
	print('良好')
else:
	print('优秀')
# 优秀

正如例子所表示的 当存在多个条件语句去判断时,可以使用 elif语句。

5.8.3 三目运算符

表达式1 if 表达式2 else 表达式3

简单解释就是 当表达式1的值为True时 则执行表达式2 如果为False时 执行表达式3 。直接看例子:

num1=10
num2=20
print(num1>num2 if num2 else num1)
# 10 

5.9 循环语句

循环一词大家并不陌生,就是不断重复一样的东西。

5.9.1 循环语句格式

在py中,有 for 循环while 循环 ,两种格式实现的效果是一样的。

for 临时变量 in 表达式1:

  重复执行的代码1

while 表达式1:

  重复执行的代码2

5.9.2 for循环

格式如上,而实际上我们for循环是对字符串的拆解输出,我们直接来看例子:

letter1='lys'
for i in letter1:
	print(i)
# l
# y
# s

可以看到在for循环中,我们对letter1 这个字符串中的字母逐个操作。当然,我们的循环也是需要遵循缩进的,就是表示归属问题。这只是对单词、对字符串的操作,那我们再往深一层想,要是要对数字操作,就是从 0取到10 又该怎么办呢?来看下面的例子:

numbers=[2,3,4,1,8]
for i in range(0,len(nunbers)):
	print(numbers[i])
# 2
# 3 
# 4
# 1
# 8

例子中我们将i当作下标索引使用,在range()语句中就是 i的取值:从0 到numbers的长度。而在range语句中0可以省略。当然我们不一定要从0开始索引,像从1,2,3任何小于numbers列表长度的开始都可以,甚至反过来取值亦可以。

5.9.3 while循环

正如我们前面讲到的 for循环和while 循环 得到结果其实一样。举个例子就是:班长给小美送花,当班长送够100支花,小美就答应做他女朋友,那我们直接来看例子。

i=0
while i<100
	print(i)
	i+=1
# 0~99 

需要注意的是 while循环要是遗漏了对 i值的变化 容易进入死循环
当然亦会存在中间就要中断循环的情况,就像接下来要讲的break和continue语句。

5.9.4 break语句

举个简单的例子就是:班长在送第99支花的时候,小美谈了男朋友,班长就停下了送花的脚步了。
接下来看代码:

i=0
while i<100:
	print(i)
	if i==99:
	break
	

break语句是直接跳出上一层循环 去执行其他语句,而下面的continue语句则不同。

5.9.5 continue语句

continue语句再举一个例子就是:班长从第一天开始送花,到第六十天的时候睡懒觉忘记了送花。下面来看代码:

i=0
for i in range(100):
	print(i)
	if i==60:
		continue
		

而这个for循环,执行到59的时候就会自动跳过60去执行输出61的操作。


了解了py的一些基础用法后,我们在这里拓展一部分看起来更贴合实际需要的具体操作。

5.10 文件读取与存储

文件,无论学生还是职工都是经常接触的,像word、excel、ppt简直就是文件三剑客。那我们要是想通过python对文件进行操作又能否实现呢?请继续看接下来的内容。

5.10.1 文件的基础操作

操作格式
打开文件open()
关闭文件close()
重命名文件rename()
删除文件remove()
创建文件夹mkdir()
删除文件夹redir()
获取当前目录getcwd()
获取目录列表listdir()
写入内容write()

在python中打开文件后,一定要对文件进行关闭操作,否则会造成文件损坏或丢失的情况。讲这么多来看看例子。

import os
import pandas as pd
os.makedirs(os.path.join('..','data'),exist_ok=True)
#在pycharm项目列表里面创建一个data包 exist用于判读是否有文件与其重名
data_file=os.path.join('..','data','house_tiny.csv')
#这就是就类似于‘E:/lys.txt’ 这样的文件路径
with open (data_file,'w',encoding='UTF-8') as f:
    f.write('Numrooms,Alley,Price\n')
    f.write('NA,Pave,100\n')
    f.write('2,NA,200\n')
    f.write('4,NA,400\n')
    f.write('NA,NA,1000\n')
data=pd.read_csv(data_file)

解释一下这段代码的含义:
首先import 这个语句是调用模块的作用,而模块当中存在封装好的函数可以给我们直接使用,那 os这个模块通常用于对文件的操作,上面列表中的大部分函数都在os模块当中,而pandas则是对数据进行字典化操作的模块(大家还记得我们在哪里讲到了字典吗)后面的 as可以理解为给pandas模块起外号 下次用它可以直接叫它外号。
马不停蹄,我们来看makedir()函数 就是在固有列表中创建一个文件夹用于储存我们操作的数据,path中文意思是路径,在这里表示把这个创建的文件夹放到某个地方去,‘data’就是给这个文件起的名字。
其实上面这两段都与我们这小节无关,但是还是希望大家努力理解一下。
with open 语句就是对文件进行打开后 对文件操作后关闭,非常的便利。

open(参数1, 参数2,参数3)

参数1表示对某个文件进行操作,参数2有3种模式任君挑选。下面就是对参数2的解释。

格式含义
‘r’表示对文件进行只读操作,不能修改
‘w’对文件进行写入,(如果文件还不存在的话会创建这个文件)
‘a’对文件进行尾查操作,(同样的 不存在该文件便会自动创建)

再看回我们的例子用的是 ‘w’,就是将后面的内容写入 名为‘data_file’ 的文件中。
参数3 这里不展开讲,大家就当作是小时候老师讲的固定搭配。

5.11 异常处理

异常在程序测试中经常出现,编写一个强壮稳健的程序的一方面就是有效的处理错误和异常,因此学会对异常进行预防是很有必要的,在这里我们结合上面讲到的文件来举例。

5.11.1异常的种类

这里给大家举几个常见的异常,更深入的了解需要大家参考Python标准库。

IOErrorIO错误
IndexError索引错误
UnicodeError同一码错误
NameError名称错误
TypeError类型错误
SyntaxError语法错误

5.11.2 异常处理

这里直接给大家介绍最全面的异常处理。

格式
try:
不确认是否有异常的代码
except:
检查出异常执行的代码
finally:
无论有无异常都执行的代码

try:#捕获全部异常
     f=open("E:/abc.txt","r",encoding="UTF-8")
except Exception as e:
     print("出现异常 切换模式")
     f=open("E:/abc.txt","w",encoding="UTF-8")
else:
     print("没有异常时执行else语句")
finally:
     f.close()

在面对较为简单的异常时,通常可以忽略else-finally语句且不会影响对异常的处理。

5.12 小结

综上,给大家介绍一些python的基础用法并且稍微拓展了一些,下册的撰写参考了大家提供的建议,十分感谢大家支持,小文的编写亦是我对知识理解,所提供的例子希望能帮助大家更容易去理解python基础语法,无论python是否为你的第一门编程语言,既然你对代码感兴趣且它能给你提供帮助,那我希望大家保持这份热情并延续到生活的各方面中,就像那位著名的TalkShow演员付航所说的Passion!

标签:语句,文件,大白话,num2,python,运算符,print,num1
From: https://blog.csdn.net/BabySam0225/article/details/141359190

相关文章

  • 基于python+flask框架的新冠疫情志愿者管理系统设计与实现(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景自新冠疫情爆发以来,全球范围内对公共卫生应急响应的需求急剧增加,志愿者作为社会力量的重要组成部分,在疫情防控中发挥了不可替代的作用。从......
  • 基于python+flask框架的银行理财产品推荐系统(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着金融市场的日益繁荣与居民财富的不断增长,银行理财产品作为重要的资产配置工具,其种类与复杂性也随之增加。面对琳琅满目的理财产品,投资......
  • 基于python+flask框架的校园问卷信息调查管理系统(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着教育信息化进程的不断加快,高校管理逐渐趋向智能化、精细化。传统的问卷信息调查方式,如纸质问卷,不仅效率低下、成本高昂,而且在数据处理......
  • Python中的单例模式:从入门到精通
    引言单例模式是一种常用的软件设计模式,它保证了一个类只有一个实例,并提供一个全局访问点。这种模式通常用于那些需要频繁创建和销毁的对象,比如日志对象、线程池、缓存等场景,可以有效减少资源消耗,提高系统性能。在Python中实现单例模式不仅简单直观,而且能够很好地融入到各种框架和......
  • 基于python+flask框架的基于内容推荐算法的点餐系统(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景在数字化时代,随着餐饮行业的蓬勃发展,消费者对于个性化、便捷化就餐体验的需求日益增长。传统的点餐方式已难以满足顾客对菜品多样性和个性......
  • 数据分析用r还是python
    R和Python两者谁更适合数据分析领域?在某些特定情况下谁会更有优势?还是一个天生在各方面都比另一个更好?当我们想要选择一种编程语言进行数据分析时,相信大多数人都会想到R和Python——但是从这两个非常强大、灵活的数据分析语言中二选一是非常困难的。我承认我还没能从这两个......
  • 手机如何执行Python
    首先我们可以在手机上安装qpython3。接着我们可以直接选择“终端”。在这里面我们可以直接一行一行输入执行代码。我们也可以选择进入“编辑器”。直接输入我们的python脚本代码。然后点击底部的“执行”按钮,就可以运行脚本了,并输出“你好”。我们也可以......
  • Python中的上下文管理器:提升代码的优雅与安全
    在编写Python程序时,处理资源(如文件、网络连接、数据库会话等)的正确打开和关闭至关重要。不当的资源管理可能导致内存泄漏、数据损坏等问题。幸运的是,Python提供了一种优雅的方式来解决这个问题——上下文管理器。本文将探讨上下文管理器的概念,如何使用它们,以及如何自定义自......
  • python打包成exe
    要将Python代码打包成exe文件,可以使用PyInstaller工具。以下是使用PyInstaller打包Python代码为exe的基本步骤:安装PyInstaller: pipinstallpyinstaller使用PyInstaller打包Python脚本: pyinstaller--onefileyour_script.py这里的your_script.py是你要打包的P......
  • python画图|3D直方图基础教程
    前述已经完成了直方图和3D图的基本学习,链接如下:直方图:python画图|水平直方图绘制-CSDN博客3D图:python画图|水平直方图绘制-CSDN博客现在我们尝试把二者结合,画3D直方图。【1】官网教程首先,依然是来到官网,链接如下;Demoof3Dbarcharts—Matplotlib3.9.2documentatio......