培训第二十四天(python基础学习)

embedded/2024/9/25 9:30:05/

上午

python开发工具:

1、安装自带的ide

2、pycharm(付费)

3、anaconda

1、环境 python2内置,需要换为python3

 [root@3 ~]# pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ some-package  //切换国内下载[root@3 ~]# yum list installed | grep python[root@3 ~]# yum list installed | grep epel[root@3 ~]# yum list | grep python3[root@3 ~]# yum -y install python3.x86_64[root@3 ~]# python3 --versionPython 3.6.8#最新版3.12版可以使用源码安装[root@3 ~]# python3     #进入到python的编辑状态Python 3.6.8 (default, Nov 14 2023, 16:29:52) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linuxType "help", "copyright", "credits" or "license" for more information.>>> print("hello world")hello world#如果直接输入python,会直接进入到python2中

2、变量和数据类型

1、三大类数据类型

字符 字符串str

数值 整数int,浮点float

逻辑 True False(注意首字母大写)

 >>> print(1==1)True>>> print(1!=1)False>>> b='zhangsan'>>> type(b)<type 'str'>>>> c=3>>> type(c)<type 'int'>>>> d=3.14>>> type(d)<type 'float'>

3、数据集合

计算是在python内存中计算的,必须要有指定内存空间保存数据

这些内存空间其实就是变量(a,b,c)

我们使用数据集合批量管理内存空间

[]列表,{}字典,()元组

(1)列表

python中列表是使用最为广泛的一个数据集合工具

是java中数组和list的综合体

当有多个数据需要管理,可以定义一个列表(管理列表)

 # python为开发提供了丰富的使用手册help(lista) #通过上下方向,enter,space键来翻阅信息,使用q退出查看 more less# 创建列表lista=[]listc=[1,2,3]# 修改列表# 追加元素lista.append(item) #在所有元素之后添加元素# 插入元素listb.insert(pos,item) #在pos序号之前插入item# 删除元素 remove 和 poplist.pop() #删除list中的最后一个元素list.remove(list[index]) #删除序号为index的元素# 修改元素list[index]=newvalue# 删除列表del list

练习:

 >>> listb=["tom","jerry"]>>> listb['tom', 'jerry']>>> listb.append("tomcat")>>> listb['tom', 'jerry', 'tomcat']>>> listc=["tom","jerry"]>>> listc.pop()'jerry'>>> listc['tom']>>> listd=listb.pop()>>> listd'tom'>>> liste=listb.pop()Traceback (most recent call last):File "<stdin>", line 1, in <module>IndexError: pop from empty list>>> listb[]# 当在列表中删除或者修改一个元素的时候,列表会返回新的列表>>> listb.append('lisi')>>> listb.append('zhangsan')>>> listb.append('wangwu')>>> listb['lisi', 'zhangsan', 'wangwu']>>> listb[0]'lisi'>>> listb[1]'zhangsan'>>> listb[2]'wangwu'>>> listb.remove(listb[1])>>> listb['lisi', 'wangwu']
(2)字典

dict

dictionary

key-value 键值对

{"name":"张三","age":"19","gender":"male","height":"145","weight":"180"}

健:值 如下:

 {"from":"me","to":"you","message":"你吃饭了吗?","time":"2024-7-8 9:00:32","user":{"username":"abc","password":"abc"}}
 # 创建字典dict0={健:值,健:值}# 追加元素dict0["健"]="值"# 删除元素dict0.pop("健")# 修改元素dict0["存在的健"]="修改后的值"

练习:

 >>> dict0={... "id":1,... "username":"abc",... "password":"123"... }>>> help(dict0)>>> dict0{'id': 1, 'username': 'abc', 'password': '123'}>>> dict0["realname"]="zhangsan">>> dict0{'id': 1, 'username': 'abc', 'password': '123', 'realname': 'zhangsan'}>>> dict0.pop("id")1>>> dict0{'username': 'abc', 'password': '123', 'realname': 'zhangsan'}>>> dict0["password"]="123456">>> dict0{'username': 'abc', 'password': '123456', 'realname': 'zhangsan'}​# list列表与dict字典嵌套>>> a=[1,2,3]>>> b={"username":"abc","password":"abc"}>>> a[1, 2, 3]>>> b{'username': 'abc', 'password': 'abc'}>>> a.append(b)>>> b["a"]=a>>> a[1, 2, 3, {'username': 'abc', 'password': 'abc', 'a': [...]}]>>> b{'username': 'abc', 'password': 'abc', 'a': [1, 2, 3, {...}]}
(3)元组

不能修改,只可以查看

tuple[index],list(tuple),tuple(list)

list()可以把dict的key生成一个列表

list()可以把tupl变成列表

tupl可以把dict和list变成元组

功能指令说明
创建列表[]符号本身就是列表
list(元组)将元组转成列表
list(字典)提取字典的key转成列表
字典.keys()字典中的key返回一个列表
字典.values()字典中的value组成的列表
字典.items()字典中的每个k-v组成元组,这些元组组成一个新的列表
修改列表l.inster(index,value)在索引值为index的元素之前插入一个元素
l.append(value)在所有元素之后添加一个元素
l[index]=value将索引为index元素的值修改为value
l.pop()删除最后一个元素
del l释放l内存
查看列表l显示列表中的所有数据
l[index]返回索引值为index的元素
字典的创建{}代表一个空字典
{k0:v0,k2:v2.....}这是有初始值的字典
dict([(k0,v0),(k1,v0),(k2,v2)])[]中的每一个()中都有2个值,一个是key,一个是value自动解析为一个字典了
元组(),(1,2,3,4)创建空元组,创建有初始值的元组
也可以从dict中提取,也可以将列表直接转换成元组

登录信息返回的键值对:

 {"method":"post","username":"abc","password":"123","params":[1,2,3],"cntroller":"login"}

4、选择语句和循环语句

(1)if选择语句

缩进是必须的 (一个tab健或者四个空格)

 if condition0:statement0if condition1:block1else:block2else:statement1

多分支if语句

 if condition0:block0elif condition1:block1elif condition2:block2...else:blockn

练习:

 [root@3 ~]# vim py001.pyif True:print("i'm true")else:print("i'm false")[root@3 ~]# python3 py001.py i'm true>>> n=58>>> if n>90:...     print("优秀")... elif n>80:...     print("良好")... elif n>70:...     print("中等")... elif n>60:...     print("及格")... else:...     print("不及格")... 不及格[root@3 ~]# vim py002.pyimport randomn=random.randint(0,100)print("随机分数为:",n)if n>90:print("优秀")elif n>80:print("良好")elif n>70:print("中等")elif n>60:print("及格")else:print("不及格")[root@3 ~]# python3 py002.py随机分数为: 68及格[root@3 ~]# vim py003.pyimport randomn=random.randint(50,100)print("随机数值为:",n)if n>90:print("youxiu")else:if n>80:print("lianghao")else:if n>70:print("zhongdeng")else:if n>60:print("jige")else:print("bujige")​[root@3 ~]# python3 py003.py随机数值为: 93youxiu
(2)swith插槽
(3)input与print
 >>> print("请输入您的选择")请输入您的选择>>> print("1、创建master,2、创建slave")1、创建master,2、创建slave>>> input("---:")---:1'1'>>> input("---:")---:2'2'
(3)for循环语句

练习:

 >>> list=[1,2,3,4,5]>>> for var in list:   #列表遍历...     print(var)... 12345>>> for var in ["a","b","c"]:   #列表遍历...     print(var)... abc>>> d={"a":1,"b":2,"c":3}    #字典遍历key>>> for var in d:...     print(var)... abc>>> for var in d:     #字典遍历value...     print(d[var])... 123>>> tupl0=("a","b","c")  #遍历元组>>> for var in tupl0:...     print(var)... abc>>> range(9)range(0, 9)>>> list(range(9))[0, 1, 2, 3, 4, 5, 6, 7, 8]>>> for i in range(9):...     print(i)... 012345678>>> for i in range(101):...     n=n+i... >>> n5050[root@3 ~]# vim py004.pyn=0for i in range(101):n=n+iprint(n)[root@3 ~]# python3 py004.py 5050
(4)while循环语句(continue与break)

break和continue也可以应⽤于for

 while condition:blocak#continue,break;

练习:

 >>> i=0>>> while i<10:...     i+=1...     if i%2!=0:...             continue...     print(i)... 246810>>> c=0>>> while True:...     print(c)...     c+=1...     if c==5:...             break... 01234

5、常用的工具api

 # 指令vim 001.py# 执⾏py脚本python3 001.py# 调试py脚本python3 -m pdb 001.py# 输⼊n按回⻋执⾏下⼀⾏代码# 输⼊q退出调试# 生成随机数import randomn=random.randint(0,10)#创建目录import osos.mkdir("/opt/aaa")

练习:

 [root@3 ~]# python3 -m pdb py003.py> /root/py003.py(1)<module>()-> import random (Pdb) n> /root/py003.py(2)<module>()-> n=random.randint(50,100)(Pdb) n> /root/py003.py(3)<module>()-> print("随机数值为:",n)(Pdb) n随机数值为: 92......(Pdb) q>>> import random>>> n=random.randint(0,10)>>> n10>>> n=random.randint(0,10)>>> n4>>> import os>>> os.mkdir("/opt/aaa")>>> quit()[root@3 ~]# ls /optaaa

http://www.ppmy.cn/embedded/94272.html

相关文章

Oracle: oracle大小写敏感问题

oracle大小写敏感含义&#xff1a;比如创建表A和a&#xff0c;A和a是两个不同的表&#xff08;表名不同&#xff09;。 oracle大小写不敏感含义&#xff1a;比如创建了A表就不能创建a表&#xff0c;将A和a看成是相同的表&#xff08;表名相同&#xff09;。 1、查询用户是否存…

Centos7如何更换yum源

Centos7默认的yum源是国外的&#xff0c;所以我们使用的时候就很慢&#xff0c;有时候甚至还会下载失败&#xff0c;所以我们要选择更换yum源&#xff08;我用的是阿里云的&#xff09; 备份原有的 YUM 源配置文件&#xff1a; sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc…

白骑士的Matlab教学基础篇 1.4 函数与脚本

系列目录 上一篇&#xff1a;白骑士的Matlab教学基础篇 1.3 控制流 函数和脚本是 MATLAB 编程中的基本组成部分&#xff0c;它们使得代码更加模块化、可重用和组织化。通过理解函数的定义与调用、参数与返回值&#xff0c;以及 MATLAB 脚本与批处理&#xff0c;可以显著提高编…

matlab实现红绿灯识别

在MATLAB中实现红绿灯识别通常涉及图像处理技术&#xff0c;包括颜色分割、形态学操作、边缘检测等步骤。下面我将给出一个基本的框架和示例代码&#xff0c;用于在MATLAB中识别图像中的红绿灯。 步骤 1: 读取图像 首先&#xff0c;你需要有一张包含红绿灯的图像。 img imr…

【Java】深入了解 Java 的 charAt() 方法

我最爱的那首歌最爱的angel 我到什么时候才能遇见我的angel 我最爱的那首歌最爱的angel 我不是王子也会拥有我的angel &#x1f3b5; 张杰《云中的angel》 在 Java 编程中&#xff0c;字符串&#xff08;String&#xff09;是我们经常处理的数据类型之一。…

2024互联网暑期实习面经和流程记录分享

2024互联网暑期实习面经和流程记录分享 面试经验和流程需要注意的点 面试经验和流程 因为敏感信息的原因&#xff0c;这里涉及到公司名字的全部进行打码 笔者投递和面试了很多公司&#xff0c;具体有包括算法和开发岗&#xff0c;下面的公司一律用字母代替。 O公司&#xff0…

基于STM32设计的智能鱼缸(华为云IOT)(200)

文章目录 一、前言1.1 项目介绍【1】项目功能介绍【2】设计实现的功能【3】项目硬件模块组成1.2 设计思路【1】整体设计思路【2】ESP8266工作模式配置【3】自动换水原理1.3 项目开发背景【1】选题的意义【2】可行性分析【3】参考文献1.4 开发工具的选择【1】设备端开发【2】上位…

ECR绕过技巧

一、预编译与sql注入 预编译SQL有两个优势&#xff1a; 1、性能更高&#xff1a;预编译SQL&#xff0c;编译一次之后会将编译后的SQL语句缓存起来&#xff0c;后面再次执行这条语句时&#xff0c;不会再次编译。&#xff08;只是输入的参数不同&#xff09;。 2、更安全(防止S…