当前位置: 代码迷 >> 综合 >> 某马python day06
  详细解决方案

某马python day06

热度:54   发布时间:2023-12-13 09:22:45.0

Python基础

python基础学习——列表(相当于java的数组)

  1. 列表的格式:
    [数据1, 数据2, 数据3, 数据4…],其中元组中存储的数据可以是类型不同的。对于元组的操作包括了基本的额增删改查
  2. 元组的查找:
    元组的下标:元素的下标是从0开始,当查找的下标大于列表的时候,直接报错,另外查找指定元组的下标利用的函数是index(),当查找的元素在列表中不存在的时候,会直接进行报错的处理。
    查找下标的函数格式是:
    列表序列.index(数据, 开始位置下标, 结束位置下标]
''' 列表的格式:[数据1, 数据2, 数据3, 数据4......] 列表的下标: 返回指定元素的下标的函数:index() '''
name_list=["Tom","Jerry","Rose"];
print(name_list[0]);  #Tom
print(name_list[2]);  #Rose
#使用函数返回指定字符串的下标:
print(name_list.index("Tom"));   #0
#当查询的数据在列表中不存在的时候返回的值是:直接数据的报错ValueError: 'jerry' is not in list
print(name_list.index("jerry"));
#统计元素在列表中出现的次数count()
print(name_list.count("Tom"));  #1
print(name_list.count("jerry"));  #0
#计算列表中元素的个数的函数:len,使用方法如下:
print(len(name_list));  #3
  1. 列表——判定元素是否在列表种
    函数及其函数的语法形式:in:判断指定数据在某个列表序列,如果在返回True,否则返回False,
#判定元素是不是在列表中出现的函数:
name_list1=["Tom","rose","Jerry","dog"];
print("Tom" in name_list1);  #True
print("Rose" in name_list1);  #False
print("Rose" not in name_list1)  #True
#案例实现;
name_list2=["Tom","rose","Jerry","dog"];
name=input("请输入您的姓名:");
if name in name_list2:print("您的名字已经被注册");
else:print("注册成功,目前列表中所有的用户有:")name_list2.append(name);
print(name_list2);

列表种添加元素的函数:append()、extend()、insert():
append():列表结尾追加数据,函数的语法:列表序列.append(数据)。
注意:
extend():列表结尾追加数据,如果数据是?个序列,则将这个序列的数据逐?添加到列表,函数的语法:表序列.extend(数据)
两者之间的区别:在添加单个的数据和添加整个的列表的时候,两个函数添加的方式是不同的,具体的不同已下面的代码的执行展示:

name_list2.append(["xiaoming","xiaohong"]);
print(name_list2);
# extend()添加单独的数据和添加列表的的不同
name_list3=["小雅","xiaozhang","Tom"];
name_list3.extend("xiaozhang");
#['小雅', 'xiaozhang', 'Tom', 'x', 'i', 'a', 'o', 'z', 'h', 'a', 'n', 'g']
print(name_list3);
name_list3.extend(["xiaohong","xaioli"]);
#['小雅', 'xiaozhang', 'Tom', 'x', 'i', 'a', 'o', 'z', 'h', 'a', 'n', 'g', 'xiaohong', 'xaioli']
print(name_list3);

列表中数据的插入函数:insert():指定位置新增数据,在指定的位置添加元素。
函数的语法:列表序列.insert(位置下标, 数据),具体的代码如下:

#列表中数据的插入函数:insert():指定位置新增数据,在指定的位置添加元素。
#函数的语法:列表序列.insert(位置下标, 数据)
name_list4=["小雅","xiaozhang","Tom"];
name_list4.insert(2,["xaiojiang","xiaozhao"])
print(name_list4);   #['小雅', 'xiaozhang', ['xaiojiang', 'xiaozhao'], 'Tom']
name_list4.insert(0,"jiang")
print(name_list4); #['jiang', '小雅', 'xiaozhang', ['xaiojiang', 'xiaozhao'], 'Tom']
  1. 列表种删除元素的函数:del、pop()、remove()
    函数的不同:del :删除整个列表或者是删除指定下标的数据,pop():删除指定下标的函数,默认是删除最后的一个元素,并区返回删除的元素,remove():删除第一个与目标元素相同的数据。具体的代码实现:
# del 删除列表
name_list1=["Tom","Jerry","Dog","Cat","mouch"];
print(name_list1);
# 删除整个列表
# del name_list1;
# print(name_list1); #删除后的结果是直接进行报错
#使用del函数删除指定位置的元素
del name_list1[0];  #['Jerry', 'Dog', 'Cat', 'mouch']
print(name_list1);
''' pop():删除指定下标的数据(默认为最后?个),并返回该数据。 函数使用的语法:列表序列.pop(下标),可以删除指定下标的数据,并返回删除的数据。 '''
pop_name=name_list1.pop(0);
print(pop_name);    # Jerry
''' remove():移除列表中某个数据的第?个匹配项。 函数使用的语法:列表序列.remove(数据),可以删除指定的数据 '''
name_list1.remove("Cat");
print(name_list1);  # ['Dog', 'mouch']
''' clear():清空列表的数据,返回的是一个空的列表,和del函数不同,并不会删除所占用的空间 函数使用的语法:列表序列.clear(),数据的返回结果都是[] '''
name_list1.clear();
print(name_list1);    #函数执行的结果是返回[]
  1. 列表种修改元素的方法:逆置reverse(),排序sort(),复制copy()
    函数的使用和运行结果如下述代码所示:
''' 列表的逆置:reverse() 列表中数据的排序:sort() '''
sum=[9,8,7,2,6,5];
sum.reverse();
print(sum);    # [5, 6, 2, 7, 8, 9]
sum.sort(reverse=True);
print(sum);     # [9, 8, 7, 6, 5, 2]
sum.sort(reverse=False);
print(sum);     # [2, 5, 6, 7, 8, 9]
''' 列表的复制:copy() '''
name_list=["tom","Jerry","Toney"];
name_list1=name_list.copy();
print(name_list1);      # ['tom', 'Jerry', 'Toney']
  1. 列表数据的循环遍历while和for
    列表的循环:while和for循环的案例实现代码如下:
''' 列表的循环:while和for循环的案例实现 '''
name_list=["Tom","Jerry","Cat","Dog"];
i=0;
while i<len(name_list) :print(name_list[i]);i=i+1;
print("for循环链表实现");
for i in name_list:print(i);
  1. 列表的实践:随机分配老师
    将老师随机的分配到三个教室中:
# 随机分配系统
import random
Teacher=["A","B","C","D","E","F","G","F"];
classroom=[[],[],[]];
for i in Teacher:numbers=random.randint(0,2);classroom[numbers].append(i);
print(classroom);

python基础学习——元组(与列表相比较就是其中的数据不可以更改)

  1. 元组的定义:
    和列表中存储的数据相似,但是不可以对于数据进行更改
  2. 元组特点:
    定义元组使??括号,且逗号隔开各个数据,数据可以是不同的数据类型。
t1=(1,2,3.4,"Tom");
print(t1);    # (1, 2, 3.4, 'Tom')
t2=("name",);
# 如果定义的元组只有?个数据,那么这个数据后?也好添加逗号,否则数据类型为唯?的
# 这个数据的数据类型
print(type(t2));   #<class 'tuple'>
  1. 元组的查询:按照下标、index()函数、count()函数、len()函数,详细的知识点在代中体现:
    注意:如果在元组中存储这列表的元组,其中子列表中的数据是可以进行更改的。
t1=(1,2,3.4,"Tom",2);
# 按照下标对于数据的查询:
print(t1[2]);   #3.4
# index():查找某个数据,如果数据存在返回对应的下标,否则报错,语法和列表、字符串的index
# ?法相同。
print(t1.index(2));    # 1
print(t1.index(5.6));   # ValueError: tuple.index(x): x not in tuple
# count():统计某个数据在当前元组出现的次数。
print(t1.count(2)); # 2
# len():统计元组中数据的个数。
print(len(t1));  # 5