2024.8.08(python)

  一、搭建python环境

1、检查是否安装python

[root@python ~]# yum list installed | grep python
[root@python ~]# yum list | grep python3

2、安装python3

[root@python ~]# yum -y install python3

安装3.12可以使用源码安装

3、查看版本信息

[root@python ~]# python3 --version
Python 3.6.8

4、开发工具

        1. 安装自带的ide(集成开发工具)

        2.pycharm(付费)

        3.anaconda(数据分析)

5、修改pip为清华镜像 

[root@python ~]# pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ some-package 

二、python变量和数据类型

1、进入python的编辑状态

[root@python ~]# python3

>>> a=3
>>> b=4
>>> 
[1]+  已停止               python3    #ctrl+z退出
[root@python ~]# fg   #返回命令行
python3>>> a
3
>>> b
4
2、三大数据类型
        1. 字符        字符串 str
        2. 数值        整数 int,浮点数 float
        3. 逻辑        True False(首字母必须大写)
>>> flag=True
>>> print(flag);
True
>>> print(1==1);
True
>>> print(1!=1);
False
>>> b='ll'
>>> b
'll'
>>> type(b)
<class 'str'>
>>> c=3
>>> c
3
>>> type(c)
<class 'int'>
>>> d=3.14
>>> d
3.14
>>> type(d)
<class 'float'>
>>> print("hello world!")
hello world!
>>> a=3
>>> b="abc"
>>> type(a)
<class 'int'>
>>> type(b)
<class 'str'>

三、数据集合

最终计算是在python内存中计算的,必须要有指定内存空间保存数据,这些内存空间其实就是变量

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

​​​>>> name1="张三"
>>> name2="李四"
>>> name3="王五"
>>> print(name1,name2,name3)
张三 李四 王五
1、数据集合包括:
        1. 列表

                1.1 在python中使用最广泛的一个数据集合工具

                1.2 是java中数组和list的综合体

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

                1.5 管理列表

#创建列表  lista=[]  listb=[1,2,3]
>>> lista=["张三","李四","王五","赵六"]
>>> type(lista)
<class 'list'>
>>> lista
['张三', '李四', '王五', '赵六']
#python为开发提供了丰富的使用感手册
#通过上下方向。enter,space翻阅信息,按q推出查看 more list
>>> help(lista)   #获取帮助命令 按q退出
>>> listb=["tom","jerry"]
>>> listb
['tom', 'jerry']
#修改列表
#追加元素
>>> listb.append("tomcat");    #在所有元素之后添加数据   
>>> listb
['tom', 'jerry', 'tomcat']
#插入元素 listb.insert(pos,item) #在pos序列号之前插入item
>>> listb.insert(1,"laozhang")
>>> listb
['tom', 'laozhang', 'jerry', 'tomcat']
#删除元素 remove和pop
#list.pop()  删除list中的最后一个元素
>>> listb.pop()                #从后向前删除元素
'tomcat'
>>> listb
['tom', 'laozhang', 'jerry']
>>> listb.pop()
'jerry'
>>> listb.pop()
'laozhang'
>>> listb.pop()
'tom'
>>> listc=listb.pop()        #当在列表中删除或者修改一个元素时,列表会返回新的列表          
Traceback (most recent call last):File "<stdin>", line 1, in <module>
IndexError: pop from empty list
>>> listb
[]
>>> listb.append("dhwiuh")
>>> listb.append("lisi")
>>> listb
['dhwiuh', 'lisi']
#list.remove(listb[index])   删除list中序号为index的元素
>>> listb.remove('lisi')   #指定元素移除
>>> listb
['dhwiuh']
>>> listb.remove(listb[0])   #指定序列号移除
>>> listb.append("lisi")
>>> listb.append("dhwiuh")
>>> listb[0]
'lisi'
>>> listb[1]
'dhwiuh'
>>> listb[2]
Traceback (most recent call last):File "<stdin>", line 1, in <module>
IndexError: list index out of range  #下标越界
>>> listb.remove(listb[0])   #按序号删除
>>> listb
['dhwiuh']
#修改元素
>>> listb.append("jerry")
>>> print(listb)
['dhwiuh', 'jerry']
>>> listb[0]
'dhwiuh'
>>> listb[0]='tom'  #按序号直接修改
>>> print(listb)
['tom', 'jerry']
#del list 删除所有
        2. 字典

                2.1 dict

                2.2 dictionary

                2.3 key-value 键值对

                2.4 {"name":"","age":"","gender":"male"}

                2.5 键:值

{"from":"me""to":"you""message":"在干嘛""time":"2024-7-8 9:00:32""user":{"username":"abc""password":"abc"    }
}
>>> dict0={
... "id":1,
... "username":"123"
... }
>>> dict0
{'id': 1, 'username': '123'}
>>> dict0["realname"]="zhangsan"
>>> dict0
{'id': 1, 'username': '123', 'realname': 'zhangsan'}   #字典
>>> dict0.pop("id")
1
>>> dict0
{'username': '123', 'realname': 'zhangsan'}
>>> dict0["password"]="123456"
>>> dict0
{'username': '123', 'realname': 'zhangsan', 'password': '123456'}
>>> a=[1,2,3]
>>> b={"username":'abc',"password":'123'}
>>> a.append(b)
>>> b["a"]=a
>>> a
[1, 2, 3, {'username': 'abc', 'password': '123', 'a': [...]}]
>>> b
{'username': 'abc', 'password': '123', 'a': [1, 2, 3, {...}]}
        3. 元组

                3.1 没有修改,只可以查看

                3.2 tuple[index]

                3.3 list[tuple]

                3.4 tuple(list)

功能指令说明
创建列表[]符号本身就是列表
list(元组)将元组转成列表
list(字典)提取字典中的key值转成列表
字典.keys()

字典中的key返回成一个列表

字典.values()字典中的values祖成列表
字典.items()字典中的k-y祖成元组,这些元组祖成一个新的列表
修改列表L.insert(index,value)在索引值为index的元素之前插入一个元素
L.append(value)在所有元素之后添加一个元素
L[index]=value将索引为index元素的值改为value
L.pop()删除最后一个元素

del L

释放L内存
查看列表L显示列表中的所有数据
L[index]返回索引值为index的元素
字典的创建{}本身代表一个空字典

{k0:v0,k1:v1...}

这是一个有初始值的列表
dict({(k0.v0),(k1,v1),(k2,v2)})[]中的每个()中都有两个值,一个是key一个是vlaue自动解析成一个字典
元组(),(1,2,3,4)创建空元组,创建有初始值的元组
也可从dict中提取,也可以将列表转换成元组

                        

#元组支持查看不支持修改
>>> tupl0=(1,2,3,4)
>>> tupl0
(1, 2, 3, 4)
>>> tupl0[0]
1
>>> tupl0[3]
4
>>> tupl0[1]=666   #不支持修改
Traceback (most recent call last):File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>> list(tupl0)
[1, 2, 3, 4]
>>> aa=list(tupl0)    #变成列表可以修改
>>> aa
[1, 2, 3, 4]           #列表
>>> tuple(aa)          
(1, 2, 3, 4)           #元组
>>> dict1={"a":1,"b":2,"c":3}
#list()可以把dict的key生成一个列表
>>> dict1
{'a': 1, 'b': 2, 'c': 3}
>>> dict1.keys()
dict_keys(['a', 'b', 'c'])
>>> dict1.items()
dict_items([('a', 1), ('b', 2), ('c', 3)])
>>> list(dict1)
['a', 'b', 'c']
#list可以把tupl变成列表
#tupl可以把dic和list变成元组
>>> dict([("a",1),("b",2)])
{'a': 1, 'b': 2}

四、选择语句和循环语句

        1、选择语句
                1.if

                if condition:

                        statement0

                        if condition1:

                                statement2

                        else:

                else:

                        statement1

        [root@python ~]# vim py001.py     格式必须缩进

        

        [root@python ~]# python3 py001.py   执行脚本
        i am true

>>> if True:
...     print("i am true")
... else:
...     print("i am false")
... 
i am true
                  2. if多分支
>>> print("请输入你的选择")
请输入你的选择
>>> print("1.创建master,2.创建slave")
1.创建master,2.创建slave
>>> input("---:")
---:1
'1'
>>> n=input(""---:)File "<stdin>", line 1n=input(""---:)^
SyntaxError: invalid syntax
>>> n=input("---:")
---:2
>>> n
'2'

 [root@python ~]# vim py002.py

[root@python ~]# python3 py002.py
随机分数为: 50
不及格
[root@python ~]# python3 py002.py
随机分数为: 74
中等

>>> if n>90:
...     print("优秀")
... elif n>80:
...     print("良好")
... elif n>70:
...     print("中等")
... elif n>60:
...     print("及格")
... else:
...     print("不及格")
... 
不及格
                    3. if嵌套

                [root@python ~]# vim py003.py

                
                [root@python ~]# python3 py003.py
                随机数值: 66
                及格

                 4.switch 插槽
        2、循环语句
                1. for

                for var in list:

                        print(var)

>>> range(9)
range(0, 9)
>>> list(range(9))
[0, 1, 2, 3, 4, 5, 6, 7, 8]
>>> for i in range(9):
...     print(i)
... 
0
1
2
3
4
5
6
7
8
>>> n=0
>>> for i in range(100):  #0-99
...     n=n+i    #1-99数字累加
...     
... 
>>> n
4950
>>> for i in range(101):   #0-100
...     n=n+1
... 
>>> n
5051
>>> range(10)
range(0, 10)
>>> for i in range(1,10):
...     print(i)
... 
1
2
3
4
5
6
7
8
9
>>> # 在列表中循环
>>> for var in ["a","b","c"]:
...     print(var)
... 
a
b
c
>>> a=["b","c","d","h"]
>>> for var in a:
...     print(var)
... 
b
c
d
h
>>> #在字典中遍历
>>> d={"id":"1001",'name':'张三','age':18,'gender':'男'}
>>> d
{'id': '1001', 'name': '张三', 'age': 18, 'gender': '男'}
>>> for var in d:
...     print(var)   #将d字典中的key输出
...     #print(d[var])   #将key对应的value值输出
id
name
age
gender
>>> for var in d:
...     print(var,"-",d[var])
... 
id - 1001
name - 张三
age - 18
gender - 男
>>> for var in d.values():   #value
...     print(var)
... 
1001
张三
18
男
#在元组中遍历
>>> tupl0=("a","b","c")   #创建元组
>>> for var in tupl0:
...     print(var)
... 
a
b
c

[root@python ~]# vim py004.py


[root@python ~]# python3 py004.py
5050
[root@python ~]# python -m pdb py004.py   调试模式,按n下一步,按q退出

案例:输出0-100之间可以被7整除的整数 

>>> b=list(range(101))
>>> b
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
>>> for i in b:
...     if i%7==0:
...             print(i,"可以被7整除")
... 
0 可以被7整除
7 可以被7整除
14 可以被7整除
21 可以被7整除
28 可以被7整除
35 可以被7整除
42 可以被7整除
49 可以被7整除
56 可以被7整除
63 可以被7整除
70 可以被7整除
77 可以被7整除
84 可以被7整除
91 可以被7整除
98 可以被7整除
                2. while

                while condition:

                        blocak

                        #continue(退出当前循环),break(退出整个循环);

>>> n=0
>>> i=1
>>> while i<101:
...     n+=i
...     i+=1
... 
>>> n
5050
>>> i=1
>>> n=0
>>> while True:   #死循环
...     print(i)
#break和continue也可用于for
>>> while True:
...     print("abc")
...     break
... 
abc
>>> while True:
...     print("abc")
...     continue    #死循环
>>> i=1
>>> while True:
...     if i==3:
...             continue
...     print(i)
...     i+=1         
... 
1
2          #之后都不输出

 


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/395172.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数字信号处理2: 离散信号与系统的频谱分析

文章目录 前言一、实验目的二、实验设备三、实验内容四、实验原理五、实验步骤1.序列的离散傅里叶变换及分析2.利用共轭对称性&#xff0c;设计高效算法计算2个N点实序列的DFT。3.线性卷积及循环卷积的实现及二者关系分析4.比较DFT和FFT的运算时间5.利用FFT求信号频谱及分析采样…

游戏行业最新报告 | 2024年1—6月:中国游戏市场收入上升至1472.67亿元

2024年1—6月收入&#xff1a;达1472.67亿元&#xff0c;同比增长2.08% 伽马数据提供的数据显示&#xff1a;2024年1—6月&#xff0c;国内游戏市场实际销售收入1472.67亿元&#xff0c;同比增长2.08%&#xff0c;增长趋势较为平稳。 中国市场实际销售收入及增长率 游戏用户达…

(24)(24.2) Minim OSD快速安装指南(一)

文章目录 前言 1 概述 2 基本接线图 3 关键冷却条件的可选设置 4 固件可用于MinimOSD 5 MWOSD 前言 MinimOSD “屏幕显示”是一个小型电路板&#xff0c;它从你的自动驾驶仪中提取遥测数据&#xff0c;并将其覆盖在你的第一人称视图监视器上(First Person View)。Minim …

极限挑战:40亿个非负整数中找到没有出现的数(bit数组)

我是小米,一个喜欢分享技术的29岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货! 大家好!我是小米,一个积极活泼、热爱分享技术的29岁程序员。今天,我们一起来探讨一个有趣且实用的算法问题:如何在40亿个非负整数中找到没有出现的数…

Powershell 禁用系统更新

创建一个关闭系统更新脚本 脚本系统兼容10,11,2012,206,2019,2022,2025powershell-install-stop-System-update.ps1 <# Powershell Install stop System update +++++++++++++++++++++++++++++++++++++++++++++++++++++ + _____ _____ _ …

供应商较多的汽车制造业如何选择供应商协同平台?

汽车制造业的供应商种类繁多&#xff0c;根据供应链的不同环节和产品特性&#xff0c;可以大致分为以下几类。 按供应链等级分包括&#xff1a; 一级供应商通常具有较高的技术水平和生产能力&#xff0c;能够满足汽车厂商对零部件的高品质、高性能和高可靠性的要求。 二级供应…

ImportError: DLL load failed while importing _rust: 找不到指定的程序的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

【Android Studio】Webview 内核升级得三种方法

【Android Studio】Webview 内核升级得三种方法 前言X5 腾讯组件crosswalk开源项目webview升级加载的内核&#xff08;完美解决&#xff09;总结 前言 在APP 中进行网页加载&#xff0c;一般采用原生自带的Webview 组件&#xff0c;但在需要加载高版本网页的时候&#xff0c;有…

【CSS入门】第三课 - padding内填充

上一节&#xff0c;我们说了margin外边距&#xff0c;还举了个例子&#xff0c;比如两个人紧挨着站着&#xff0c;如果两个人冬天穿了棉袄&#xff0c;很厚很厚的棉袄&#xff0c;那么他俩占据的空间就会增加&#xff0c;他俩之间的真实距离也会增加。 这一节&#xff0c;我们…

《暗黑破坏神 IV》是什么类型的游戏,苹果电脑能玩暗黑破坏神吗 crossover玩暗黑4

《暗黑破坏神 IV》&#xff08;Diablo IV&#xff09;是由暴雪娱乐开发的一款动作角色扮演游戏&#xff08;Action RPG&#xff09;&#xff0c;是广受欢迎的《暗黑破坏神》系列的最新作品。暗黑破坏神4拥有出色的游戏画面、音效和丰富的游戏玩法&#xff0c;非常值得玩家们去尝…

SpringBoot3热部署

引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope><optional>true</optional> </dependency> 默认就是,无需配置 可以了…

ADB Installer 0 file(s)copied

在为泡面神器刷安卓&#xff0c;做准备工作装ADB时报错了&#xff0c;以下是报错提示 再用cmd命令adb version验证下&#xff0c;提示adb不是有效命令&#xff0c;百分百安装失败了&#xff0c;往上各种搜索查询均没有对症的&#xff0c;其中也尝试了安装更新版本的&#xff0c…

翻译: 可视化深度学习反向传播原理一

本期我们来讲反向传播 也就是神经网络学习的核心算法 稍微回顾一下我们之前讲到哪里之后 首先我要撇开公式不提 直观地过一遍 这个算法到底在做什么 然后如果你们有人想认真看里头的数学 下一期影片我会解释这一切背后的微积分 如果你看了前两期影片 或者你已经有足够背景知…

牛羊肉巨头的数字化战略:凯宇星辉如何领先市场

凯宇星辉的创业成长史&#xff0c;给出了中国牛羊肉企业如何从散户走向集团化经营的路线图。 总部位于大连的凯宇星辉&#xff0c;在牛羊肉进口贸易领域白手起家&#xff0c;十余年时间&#xff0c;已形成以澳新、南美、北美等全球三大牛羊肉主产区为主渠道的全球直采网络布局…

《MySQL数据库》 数据类型、约束、键的使用—/—<5>

一、常见数据类型 1、数值类型&#xff1a; INT、BIGINT、FLOAT、DOUBLE&#xff0c;DECIMAL等。 INT&#xff08;整型&#xff09;&#xff1a;通常占用4个字节&#xff0c;可以存储范围为-2^31到2^31-1的整数。 BIGINT&#xff08;大整型&#xff09;&#xff1a;通常占用8…

【OCCT】第3讲 OpenCasCadeVTK实现三维建模Demo

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 公众号:VTK忠粉 前言 本文分享OpenCasCade&VTK共同实现三维建模Demo,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^)ノ~YO 1.…

AI2021矢量图形软件:Illustrator 2021 Win/Mac 直装版

dobe Illustrator 2021是一款功能强大的矢量图形设计软件&#xff0c;广泛应用于出版、多媒体和在线图像制作领域。该软件特别适用于印刷出版、海报书籍排版、专业插画、多媒体图像处理以及网页设计&#xff0c;能够提供高精度和控制的线稿&#xff0c;适合处理从简单到复杂各种…

SpringBoot 自动装配原理

零、前言 Spring简直是java企业级应用开发人员的春天&#xff0c;我们可以通过Spring提供的ioc容器&#xff0c;避免硬编码带来的程序过度耦合。但是&#xff0c;启动一个Spring应用程序也绝非易事&#xff0c;他需要大量且繁琐的xml配置&#xff0c;开发人员压根不能全身心的…

怎么查询大数据信用评分?

相信在了解大数据信用评分的时候&#xff0c;不少人都因为大数据信用评分在申贷的时候遭受到过挫折&#xff0c;因为大数据信用已经被很多银行和金融机构作为风险控制的重要依据使用&#xff0c;其中的大数据信用评分&#xff0c;能直观的感知到用户的信用情况。那如何查询大数…

AI智能助手商业系统软件源码(IMYAI智能助手) AI换脸/智能体GPTs应用/AI视频生成/AI绘画/文档分析/GPT-4o模型支持

人工智能技术的发展日新月异&#xff0c;从深度学习到自然语言处理&#xff0c;再到计算机视觉等领域&#xff0c;不断推动着各行各业的变革。在应用层面&#xff0c;人工智能已深入到内容创作领域&#xff0c;为创作者提供了前所未有的便利和可能性。这些技术的发展潜力巨大&a…