python基础
环境部署
[root@2 ~]# yum list installed|grep python
python-libs.x86_64 2.7.5-68.el7
[root@2 ~]# yum -y install epel-release #必须要有epel库
[root@2 ~]# yum update #更新yum
[root@2 ~]# yum -y install net-tools
[root@2 ~]# yum -y install python3.x86_64
[root@2 ~]# python3 --version
Python 3.6.8
[root@2 ~]# python3 #启动
Python 3.6.8 (default, Nov 14 2023, 16:29:52)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>> a=3
>>> b="abc"
>>> type(a) #查看数据类型
<class 'int'> #int类型
>>> type(b)
<class 'str'> #str类型
>>> quit() #退出
变量和数据类型
字符
|
字符串(str)
|
数值
|
整数;浮点(int、float)
|
逻辑
|
true;false
|
数据集合
1.列表:使用最广泛的数据集合工具
是java中数组和list的综合体
list
当有多个数据需要管理,可以定义一个列表
管理列表
>>> lista=["阿昌","阿芳","567","789"] #创建元素
>>> type(lista)
<class 'list'>
>>> lista
['阿昌', '阿芳', '567', '789']
>>> help(lista)
按q退出
>>> listb=["tom","jerry"]
>>> listb
['tom', 'jerry']
>>> listb.append("tomcat") #新增元素
>>> listb
['tom', 'jerry', 'tomcat']
>>> listb.remove("jerry") #删除元素
>>> listb
['tom', 'tomcat']
>>> listb
['tom', 'tomcat']
>>> listb.remove(listb[0]) #根据下标删除,下标不能越界
>>> listb
['tomcat']
>>> listb
['tom', 'jerry']
>>> listb[0]='tomcat' #修改元素
>>> listb
['tomcat', 'jerry']
>>> del lista #删除列表
>>> lista
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'lista' is not defined
2.字典
dict
dictionary
key-value(键值对)
{"name":"c,"age":"18"}
键:值
{
"from":"haha",
"to":"you",
"message":"timi",
"user":{
"username":"abh",
"password":"abh"
}
}
用户之增删改查
在a文件内加入dict0
添加other并赋值为a
实现数据劫持
元组(只能查看,不可以修改)
>>> tupl0=(1,2,3,4)
>>> tupl0
(1, 2, 3, 4)
>>> tupl0[0]
1
>>> tupl0[1]=666 #不支持修改
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>> list(tupl0) #添加到list之后就可以修改
[1, 2, 3, 4]
>>> aa=list(tupl0)
>>> aa
[1, 2, 3, 4]
[]列表 {}字典 ()元组
list()可以把dict的key生产一个列表
list可以把tupl变成列表
tupl可以把dict和list变成元组
提取key值 #key:提取冒号之前
>>> dict1
{'a': 1, 'b': 2, 'c': 3}
>>> dict1={"a":1,"b":2,"c":3}
>>> dict1.keys()
dict_keys(['a', 'b', 'c'])
提取所有元素 #提取所有
>>> dict1
{'a': 1, 'b': 2, 'c': 3}
>>> dict1.items()
dict_items([('a', 1), ('b', 2), ('c', 3)])
选择语句和循环语句
选择语句(必须缩进)
>>> if True:
... print("true")
... else:
... print("false")
...
true
[root@2 ~]# vim py001.py
[root@2 ~]# python3 py001.py #启动程序
true
if语句
格式1:
if(关系表达式) {
语句体
}
格式2:
if(关系表达式) {
语句体1;
}else {
语句体2;
}
if condition0:
statement0;
if condition1:
block1;
else:
block2;
else:
statement1;
多分枝
if condition0:
block0
elif condition1:
block1
elif condition2:
block2
...
else:
blockn
切换页面(数据不会丢失)
>>> a=3
>>> b=4
>>>
[1]+ Stopped python3
[root@2 ~]# fg
python3
>>> input("---:")
---:1
'1'
>>> n=input("---:") #更改赋值
---:2
>>> n
'2'
判断语句
>>>n=89
>>> if n>90:
... print("优秀")
... elif n>80:
... print("良好")
... elif n>70:
... print("中等")
... elif n>60:
... print("及格")
... else:
... print("不及格")
...
良好
[root@2 ~]# vim py002.py
[root@2 ~]# python3 py002.py
随即分数: 31
不及格
循环语句
格式:
for var in list:
print(var)
[root@2 ~]# vim py003.py
[root@2 ~]# python3 py003.py
5050
创建表
查看
累加算法
for i in range(101): # 0-100
n=n+i
print(n) # 1-100数字累加
在列表中循环
for var in ["a","b","c"]:
print(var)
在字典中遍历
d= {"id":1001,"name":"zhangsan","gender":"⼥"," age":18}
for var in d:
print(var) #将d这个字典中的key都输出的
print(d[var])# 根据key返回对饮的value值得
for var in d.keys():
print(var)
print(d[var])
for var in d.values():
print(var)
元组中的遍历
tupl0=("a","c","e")
for var in tupl0:
print(var)
while
格式: while condition:
blocak
1-100的累加
while i<101:
i+=1
n+=i
print n
break和continue也可以应⽤于for
while True:
print("abc")
break
while True:
if i==3:
continue
i+=1
⽣成随机数
import random
n=random.randint(0,10)
创建⽬录
import os
os.mkdir("/opt/aaa/")