python学习01

这篇博客介绍了Python学习的基础知识,包括常量和变量的概念、使用,内存中的变量管理,以及变量的类型转换。接着讲解了输入输出操作,如print()和input()函数的用法。此外,还详细阐述了运算符与表达式,特别是算术、赋值和比较运算符。最后,讨论了if分支语句,涵盖单分支、双分支、多分支和嵌套if语句的使用及区别。
摘要由CSDN通过智能技术生成

一:常量和变量

1.python的数据类型

分类:
Number:数字型【整型,浮点型,复数】
String:字符串类型
Boolean:布尔型【True,False】
None:空值
list:列表
tuple:元祖
dict:字典
set:集合

整型:可以处理任意大小的数字,支持二进制
浮点型:在计算机的底层,浮点型表示采用的是科学计数法【123.456————》1.23456e2】
复数:数学上:【a+bi————》a+bj】
字符串:是以单引号或双引号括起来的任意的文本:【"a"】
布尔值:只有两个值:True和False,关系运算符和逻辑运算符的运算结果一般都是布尔值

2.常量

定义:在程序运行的过程中,值永远不会发生变化的标识符
代码演示:
       print(2)
       print("hello")
       print(True)
       print(3+5j)

3.变量

3.1概念

定义:在程序运行的过程中,值可以随时发生改变的标识符
作用:存储数据,参与运算
语法:标识符=值
说明:标识符被称为变量名【引用】,第一次给变量的值称为初始值,=被称为赋值运算符
注意:
a.变量名需要遵守标识符的定义规则和规范
b.变量名的定义会在内存中开辟一个空间,然后在这个空间中存储数据【因为python是动态数据类型的语言,所              以在这个空间中存储的是什么类型的数据无法确定】

3.2使用

代码演示:
#1.定义一个整型的变量
age=18
print(age)

str1="hello"
#变量的值可以随时发生变化
str1="abc"
#变量的值发生在改变的过程中类型也可以发生改变【python是弱类型的语言,动态数据类型的语言,容错性比较高】
str1=True
print(str1)

#2.变量的命名
student_name="zhangsan"
studentName="xiaoming"

#3.一个变量如果未被定义,则无法使用
#4.变量的好处:存储数据,可以应对需求发生改变的情况【提高了代码的可维护性】
print(20)
print(20+4)
print(20*10)

n=20
print(n+4)
print(n*10)

#5.特殊情况:一般情况下,如果一个变量在代码运行的过程中,不想让它的值发生变化则可以通过变量的命名来区别
#解决办法:变量名遵循常量命名法【字母全部大写,不同的单词之间使用下划线分隔】
NUM=3

3.内存中的变量

思考一个问题:变量在内存中开辟了空间,内存如何释放?
            手动释放内存和自动释放内存
age=18
说明:定义一个变量,变量名为age,初始值为18,换种说法就是,引用age指向了18
当没有变量名或者引用指向了一个实体的时候,则这个实体被当作垃圾,只能等待系统的回收机制回收它,达到了内存的释放,以便于下次重复使用
代码演示:
name1="叶良辰"
name2=name1
print(name1)
print(name2)

name1="jack"
print(name1)
print(name2)

3.4删除变量

当变量被删除以后,变量将无法再使用,相当于该变量未被定义
语法:del 变量名
代码演示:
#6.删除变量
number=90
print(number)
del number
print(number)

3.5总结

特点:
a.变量的值是可以随时该百年的
b.变量的使用需要在内存中开辟空间
c.变量的意义是为了存储和处理生活中的可变参数

3.6变量的类型转换

int(xxx):将一个数值或者字符串转换成int
float(xxx):将一个数值或者字符串转换成float
str(xxx):将一个数字类型转换成str
代码演示:
num1=100
#type():查看变量的数据类型
print(type(num1))   #<class 'int'>
#id():查看变量在内存中的地址【变量的地址在内存中使用十六进制表示,是一串数字】
print(id(num1))    #1715941168

#注意;str()可以将任意类型的变量转换成字符串类型
num2=str(num1)  #等价于num2="100"
print(type(num2))  #<class 'str'>

num3=int(num2)
print(type(num3))

#注意:将字符串转换成int的时候,必须保证转换之后是完整的数字
str1="123"
print(type(str1))
print(int(str1))

二.输入输出

1.输出print()

作用:将需要显示的信息输出到控制台
代码演示:
#基本用法
#1.打印一个数据
print("hello")

#2.使用一条print语句可以同时打印多个数据,多个数据之间使用逗号隔开
#注意:多个数据之间默认使用空格隔开
print("abc","good",False,10)

#3.可以进行拼接
print(10+20)
print("10+20= ",10+20)
num1=10
num2=20
print("num1+num2= ",num1+num2)
#高级用法
#print的完整写法:print(values...,sep=" ",end="\n",file=sys.stdout,flush=False),
#分隔符,结束符,需要输出到的位置,是否需要刷新

#1.values
print("good"*5)
#"good"
#需要对特殊的符号进行转义:告诉编译器,特殊符号需要使用原来的含义——————》 \
print("\"good\"")

#字符串的拼接,此处的+被称为拼接运算符,只能是字符串之间的拼接
print("good"+"day")

#2.sep:设置分隔符,默认情况下使用空格
print("a","b","c",sep="*")

#3.end;设置换行符,默认情况下为\n
#在python3.x中,如果不想要换行,可以设置end=""
print("aaa",end="%")
print("bbb",end="%")

#4.file:表示将语句打印到哪个地方,默认情况下输出到控制台
#flush;提高写入文件的效率
#注意:如果向一个文件中写入内容,该文件不存在,就会自动创建
f=open("text.txt","w")
print("hello",file=f,flush=True)

2.输入input

#从外部【控制台】获取数据,给变量赋值,跟print正好是一个相反的过程,input输入的都是str类型
#代码演示:
#print("请输入你的姓名:")

#从控制台获取数据
#当代码执行到input的时候程序会被阻塞,等待用户的输入
#当用户输入完毕,按下回车键的时候,表示输入完成
#name=input("请输入你的姓名:")
#print(name)

#需求:根据用户输入的年龄计算还能够活多少年?假设age=80
#注意;通过input从控制台获取的数据全部是str
age=input("请输入你的年龄:")
deathAge=80
print(deathAge-int(age))
print("还可以活",deathAge-int(age),"年")
print("还可以活"+str(deathAge-int(age))+"年")

#练习:从控制台输入两个数,计算乘积
num1=input("请输入第一个数:")
num2=input("请输入第二个数:")
num1=int(num1)
num2=int(num2)
print("num1*num2= ",num1*num2)

三.运算符与表达式【第一部分】

1.表达式

表达式指的是由操作数和运算符组成的一句代码或者语句
作用是:表达式可以用来求值,用来给变量赋值
举例:1+3-2
result=1+3-2

2.运算符

2.1算术运算符

+ - * / %【求余,取模】
代码演示:
num1=5
num2=3
print(num1+num2)
print(num1-num2)
print(num1*num2)
print(num1/num2)
print(num1%num2) #2
print(num1**num2) #125
print(num1//num2) #1

#注意:在计算机的底层也是通过补码的形式处理数据的

#思考问题;求幂运算符的优先级在算术运算符中高于乘法运算符
print(2**5*3) #96
print(2*5**3) #250
print((2*5)**3) #1000

2.2赋值运算符

简单赋值运算符:= 注意:先运算=右边的,再将运算的结果赋值给=左边的变量
复合赋值运算符:+= -= *= /=【算数运算符和简单赋值运算符之间的组合】
代码演示:
#简单赋值运算符
num1=10
num2=num1+10
print(num2)

#复合赋值运算符
#工作原理:用变量原来的值进行计算,然后重新赋值给变量本身
n1=10
n1+=20 #等价于n1=n1+20
print(n1)

2.3关系【条件,比较】运算符

==  !=【不等于】< > <= >=
注意:关系运算符运算的结果都是布尔值,成立则为True,不成立则为False
代码演示:
m=10
n=20
print(m==n)
print(m!=n)
print(m<n)
print(m>n)
print(m<=n)
print(m>=n)

四.if分支语句

python中语句的分类:顺序结构,分支结构,循环结构

1.简单if语句【单分支】

语法:
if 表达式:
   语句
工作原理:当程序执行到if语句的时候,首先判断表达式的值,如果表达式的值为真,则执行缩进的语句,反之,则跳过整个if语句继续执行后面的语句
代码演示:
import random

num1=50
num2=60

if num1!=num2:
	num1=100
	
print(num1)

#练习:模拟彩票【随机获取一个数,从控制台输入一个数,比较两个数,如果相等,则说明中将】
#第一步:先导入random
#第二步:在0-99之间获取随机数
res=random.choice(range(100))
print("获取到的随机数是:",res)
num=int(input("请输入一个数:"))
if res==num:
	print("恭喜你中奖了")

2.if-else语句【双分支】

语法:
if 表达式:
   语句1
else:
   语句2
工作原理:当程序执行到if语句的时候,首先判断表达式的值,如果表达式的值为真,则执行缩进的语句1,反之,则执行语句2
本质:实现了二选一的操作
代码演示:
#需求:从控制台输入一个数,判断该数是否为偶数
num1=int(input("请输入一个数:"))
if num1%2==0:
	print("是偶数")
else:
	print("是奇数")
	
#练习:根据年龄的不同打印不同的内容
age=20
if age>=18:
	print("成年")
else:
	print("未成年")

3.if-elif-else语句【多分支】

语法:
if 表达式1:
  语句1
elif 表达式2:
  语句2
elif 表达式3:
  语句3
。。。。。。
else:
  语句n
工作原理:当程序执行到if语句的时候,首先判断表达式1的值,如果表达式1的值成立,则执行语句1,整个if-else语句结束,如果表达式1的值不成立,则接着判断表达式2的值。。。。。。
如果所有的表达式值都不成立,则执行else后面的语句n
本质:实现了多选一的操作【注意:不管其中的几个表达式成立,都只会执行其中的一个分支】
代码演示:
age=int(input("请输入年龄;"))
if age<0:
	print("输入有误")
elif age<=3:
	print("婴儿")
elif age<=18:
	print("未成年")
elif age<=50:
	print("成年")
elif age<=120:
	print("老年")
else:
	print("千年老妖怪")

4.三者之间的区别

代码演示:
n=3
#多分支
if n>1:
	print("a")
elif n>2:
	print("b")
elif n>3:
	print("c")
#a

#单分支
if n>1:
	print("a")
if n>2:
	print("b")
#ab

#双分支
if n>3:
	print("c")
else:
	print("d")
#d

5.嵌套if语句

本质:在一个if语句中可以书写其他的if语句
语法:
if 表达式1:
   语句1 
if 表达式2:
   语句2
工作原理:只有当表达式1和表达式2同时成立的时候,语句2才有被执行的机会
代码演示:
m=2
n=3
if m<5:
	print("成立1")
	if n>5:
		print("成立2")
注意:从语法角度来说,嵌套的层数没有限制,但是,从代码的可读性来说,一般情况下,嵌套的层数不超过3层

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值