大家好,这里还是长弓
今天我们继续学习python
上一篇我们讲了python的输入和输出
今天我们首先了解python代码是如何运行的呢?
目录
代码如何执行——编译器
数据类型
整形,浮点数和字符串
布尔值,空值,变量,常量
布尔值
空值:用None表示
变量
常量
python内置数据结构
列表list
list基础
list增删
元组tuple
条件判断与循环
if...else语句
你学多久了小程序:
循环
for...in循环
while循环
内置结构
dict
set
代码如何执行——编译器
有两种语言的学习经验的同学会发现,每种语言的语言可能是相似的,但都不同的。
比如输出: 你真棒,学习的同学
//c语言 #include
int main(){ printf("你真棒,学习的同学"); return 0; } #python print("你真棒,学习的同学")
那两者代码不同,如何实现相同的功能呢?
这就是因为语言中编译器,它可以将代码告诉电脑,进而执行操作,但不同语言编译器底层会有差异,初学阶段我们不需要过度深究,只需要记得编译器将代码转化为电脑理解的可执行的操作。
这里看不懂第一个代码的同学也没关系,我们只需要关注不同代码执行出结果这一过程。
大家还记得我们学习输入时使用的变量吗?我们当时只简单讲解了变量,顾名思义,是一个可以变化的量,今天我们详细了解一些常见的数据类型。
python基础输入与输出_学c的长弓狗的博客-CSDN博客
我们先来了解三种常见数据类型
整形,浮点数和字符串
整数和数学概念中相同,是一个没有小数的值,包括0,正整数和负整数,比如0,-1,1 .
比如c语言中整数还细分为不同的整数,python则不分,因此它的取值不受约束。
想必大家常常听到二进制,没听过也没关系,我们讲讲整数的不同进制。
具体请看以下文章:整数的不同进制_学c的长弓狗的博客-CSDN博客
-------------------------------------------------------------------------------------------------------------------------
浮点数就是我们知道的小数,比如3.14,1.4.
-------------------------------------------------------------------------------------------------------------------------
字符串是单引号(')或双引号(")中的内容,比如'内容' ,"内容"就是两个字符串。我们之前print("内容")输出的就是字符串。
字符串中当我们想要实现多行内容输出时,代码不是很清晰,如
其中\n是换行符,让后续内容在下一行输出,但这样的常规输出代码内容不够明了,Python就提供了一个语法
我们使用三个引号,输入第一行内容后回车得下图
进而输入三行数据,得数据的多行输出
接下来我们来看四个使用频率没那么高的词
布尔值
我们可以把布尔值看成一个非此即彼的直男
布尔值只有两个值,True和False.
那它有什么用呢?会用在我们后边讲的条件判断会讲到,这里先不讲。
空值:用None表示
变量
比如我们之前使用的name,可以用它存储其他数据类型,但我们需要给它一个变量名,name就是变量名。
什么是变量名呢?变量名必须是大小写英文、数字和
_
的组合,且不能用数字开头
常量
常量是不会变化的数,通常用全部大写字母表示,如
NUM = 20220320
列表list
list基础
list是一个可变大小的有序集合,可以用它来存储多个内容,
python中还提供一个len函数显示列表中元素的个数
我们还可以通过以下方式访问列表中元素
注意需要从0开始对应第一个元素
我们还可以从后往前显示
注意不要越界,出现未规定的情况
list增删
比如我们给list1尾部新增元素
那如果我们想把元素增加到指定位置呢?
或者如何尾删和指定位置删除呢?
最后是替换,直接赋值即可
元组tuple
元组和列表很像,不同的是元组中的元素不可变。因此需要初始化时给定数据。
我们希望计算机可以格局不同的情况输出不同的结果,这里就要使用
我们以三个月来判定一个人的身份,规定三个月以下为初学者,三个月以上夸他可以:
我们最开始遇到了这样一个错误,这是为什么呢?
因为input输入的数据类型是str字符串类型,无法直接和90这个整数比较
但还好,python中提供了int()函数转换数据类型
依此,我们更改代码,源码如下:
print("你学多久了啊?") print("请输入天数:") DayNumber = input() DayNumber = int(DayNumber) if DayNumber<90: print("才",DayNumber,"天,初学者,仍需努力哦!") else: print(DayNumber,"天这么久了,可以啊")
python中有如下两种循环,为什么会需要循环呢?比如我们计算1到100的累加,为了简化手动输入的过程。
for...in循环
add = [1,2,3,4,5] for x in add: print(x)
比方我们实现一个1—5的累加。
sum = 0 add = [1,2,3,4,5] for adds in add: sum = sum + adds print(sum)
如果我们要实现前100的累加呢?
python提供了range()函数,借助此函数实现
代码如下:
sum = 0 for adds in list(range(101)): sum = sum + adds print(sum)
while循环
当while后语句为真时,继续执行,语句不满足时,结束循环
还是来实现前100相加
sum = 0 n=0 while n<101: sum = sum + n n = n + 1 print(sum)
dict
dict叫做字典,它是如何使用的呢?
比如我们写一个表记录学生的生日
di = {'张三':11,'李四':22,'王五':33} di['李四']
我们看到上边的数据都是一一对应的关系,我们可以通过前词B查询到值2,这种结构叫键值对,键key对应值value,B为key,2为value。
当key不存在时,就会如上报错。
那我们有没有避免错误的情况呢?
自然是有的
我们既可以使用in,当为False时,即没有这个key值
也可以使用dict中的get()函数,如下图为两种使用方法
最后,dict中的元素删除,同样可以使用pop()
set
set和dict很类似,不同的是只存储key值,且不能重复。
我们可以看到set()中,需要一个[]list来初始化数据。
那它是如何增删数据呢?
Python提供了add()和remove()接口
这里也得出结论,add()一次只能插入单个数据。
今天的内容就到这里
这里还是长弓
为看到这里的同学点个赞
我们下次将讲解编程中函数的使用
我们下次见......