python_exercise4_list_部分

本文通过几个具体的Python代码示例,介绍了列表的基本操作方法,包括正向和逆向打印列表、计算列表长度等,并探讨了列表与变量之间的引用关系及如何避免修改原列表。此外,还展示了如何使用函数来实现特定功能,如设置列表首个元素为零、统计素数等。

#(a)
def list_printer(aList):
	print(aList)
	for x in aList:
		print(x,end= ' ')
	print()
#(b)
def list_printer_r(aList):
	rList = aList[::-1]
	print(rList)
	for x in rList:
		print(x,end = ' ')
	print()
#(c)
def my_len(aList):
	counter =0
	for x in aList:
		counter = counter +1
	return counter


aList = [1,2,3,4,5,6,7,8]
list_printer(aList)
list_printer_r(aList)
print('the len of aList is '+str(my_len(aList)))



#(a)
a = [1,2,3,4,5,6,7,8]
b = a
b[1] = 9999
print('now print a -> ',end ='')
print(a)
c = a[:]
c[2] = -666
print('now print a -> ',end ='')
print(a)


def set_first_elem_to_zero(l):
	l[1] = 0


set_first_elem_to_zero(a)
print('now print a -> ',end ='')
print(a)


在  b = a中, a,b会共享一个存储空间,所以对b的修改会引起a的改变,但是在c = a[:]中,先创建一个副本,再传递,这样两者就在两个不同的空间了,c的修改也不会引起a的改变,函数修改那个类似于b = a。


a = [[]] * 3
b = [[] for _ in range(3)]
for i in a:
	print(i,end = ' ')
print()

for x in b:
	print(x,end = ' ')
print()

没有不同。。


def list_and_func(aList,index):
	aList[index] = 0

aList = [1,2,3,4,5]
print(aList)
list_and_func(aList,3)
print(aList)

import math
def count_prime(n,aList):  
    if(n >= 2 ):
    	aList.append(2)
    if(n >= 3):
    	aList.append(3)
    for x in range(4,n+1):  
        if((x-1)%6 !=0 and (x+1)%6 != 0 ):  
            continue  
        flag = True  
        for i in range(2,int(math.sqrt(n))):  
            if(x%i == 0):  
                flag = False  
        if(flag == True):  
            aList.append(x)  
        else:  
            flag = True  
 

def count_prime_2(n,aList):  
    if(n >= 1):  
        aList.append(2)
    if(n >= 2):  
        aList.append(3) 
    num_found = 2  
    x = 5  
    while(True):  
          
        if((x-1)%6 !=0 and (x+1)%6 != 0 ):  
            x = x+1  
            continue  
  
        flag = True  
        for i in range(2,int(math.sqrt(n))):  
            if(x%i == 0):  
                flag = False  
        if(flag == True):  
            num_found = num_found +1
            aList.append(x)
            if(num_found == n):  
                break  
        else:  
            flag = True  
        x = x+1  

aList = []
count_prime(99,aList)
bList = []
count_prime_2(5,bList)
print(aList)
print(bList)



内容概要:本文详细介绍了一个基于Java+Vue的深度学习遥感建筑物提取与变化检测系统的设计与实现。系统融合多源遥感数据预处理、U-Net建筑物分割、孪生神经网络变化检测等核心技术,构建从前端交互、后端任务调度到模型推理的完整闭环。项目涵盖需求分析、数据库设计(MySQL)、API接口规范、前后端功能模块实现(含代码示例)、系统部署与未来优化方向,实现了遥感影像上传、自动分割、多时相变化检测、结果可视化与报告导出等全流程功能。系统具备高自动化、强交互性、可扩展性和安全合规等特点,适用于城市规划、灾害监测、土地调查等多个领域。; 适合人群:具备Java、Vue前端及深度学习基础知识的研发人员、GIS开发工程师、遥感数据分析师,以及从事智慧城市、自然资源管理等相关领域的技术人员。; 使用场景及目标:①应用于城市精细化管理、灾害应急响应、房地产监控等场景,实现建筑物动态变化的智能识别与可视化分析;②作为深度学习与遥感技术融合的教学案例,帮助开发者掌握前后端分离架构、模型集成、大规模数据处理与系统部署的综合技能;③为企业或科研机构提供可二次开发的开源框架,支持定制化模型接入与业务扩展。; 阅读建议:建议结合文档中的代码示例与系统架构图进行实践,重点关注前后端交互逻辑、深度学习模型调用方式及数据库设计。在学习过程中可搭建本地开发环境,逐步实现各功能模块,并通过模拟数据验证系统流程。同时注意安全规范与性能优化策略,以提升系统的稳定性与实用性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值