【每日一题】Python爬虫基础篇

嗨嗨!
这里是olive的学习频道!
以下所有题目均来自于某Python竞赛软件,分享出来只是为了督促自己学习,所有题目和内容仅做学习参考,不做任何其他用处嗷~
那我们话不多说,进入正题吧!

来来~上题!

在这里插入图片描述

题目:给定一个整数数组nums和一个目标值target,请你在该数据找出“和”为目标值的两个数,返回他们的数组下标`

思路解析:

  1. 题目分析:

    在nums数组中,找出两两相加的和为target的值的下标值。
    
  2. 解决思路:

  • 传入数组,利用双层for循环嵌套遍历获得下标值和内容,再将内容进行比对,用if语句把符合题意的下标和内容进行输出。
  • 利用target-j in nums这个特性,(9-2=7),将数组遍历后,利用index函数查找目标值和目标值,并将其下标输出。
    在这里插入图片描述

—思路1—
传入数组,利用双层for循环嵌套遍历获得下标值和内容
将内容进行比对,用if语句把符合题意的下标和内容进行输出

def twoSum(nums:list,target:int)->list:
	n=len(nums)
	a=[]#用来存放结果
	for i in range(n-1):#range(0,3)
		for j in range(i+1,n):#range(1,4)(2,4)(3,4)
			if nums[i]+nums[j]==target:
				a.append(i)
				a.appeed(j)
	return a
nums=[2,7,8,1]
target=9
print(twoSum(nums,target))

—思路2—
利用target-j in nums这个特性,(9-2=7),将数组遍历后,利用index函数查找目标值和目标值,并将其下标输出。

def twoSum(nums: list, target: int) -> list:
    for i,j in enumerate(nums):#enumerate枚举
        if target-j in nums:
            return [i,nums.index(target-j,i+1,len(nums))]#index(目标,开始,结束)
nums=[2,3,2,4]
target=7
a=twoSum(nums,target)
print(a)

—官方答案—

def twoSum(self, nums: list, target: int) -> list:
        for index, num in enumerate(nums):
            if target - num in nums:
                return [index, nums.index(target - num, index+1, len(nums))]

其实也就是第二种思路的规范化啦!
在这里插入图片描述

这边补充一下里面的函数知识:

enumerate()枚举

  • 作用:将一种类型中可能会出现的所有情况一一列举出来。 用法:
  • enumerate(X,[start=0])

X:迭代器序列(可以是字典)
[start=0]:起始值,这里0代表“从0开始一直往后枚举”

  • 举例1:
a={1:1,2:2,3:3}
for i,item in enumerate(a):
	print(i,item)

运行结果:
0 1
1 2
2 3

  • 举例2:
a=[1,2,3,4,5,6]
for i,item in enumerate(a,start=10):
	print(i,item)

运行结果:
10 1
11 2
12 3
13 4
14 5
15 6

简而言之就是将需要获取的字典、列表等内容,用此方法进行一一列举,获取其内容,便于我们进行后续编程操作。

len()获取列表长度

  • 作用:获取当前列表长度(超常用!)
  • 用法:len(n)
  • 举例1:
n=["a","b","c"]
print(len(n))

运行结果:3

  • 举例2:
n="hello"
for i in range(len(n)):
	print(n[i])

运行结果:
h
e
l
l
o

简而言之就是计算长度,经常用于数组遍历和查找。

index()查找对象

  • 作用:查找某个元素并输出索引值
  • 用法:a.index(查找对象,开始值,结束值)
list=[1,8,618,"csdn",31,"ndsc"]
print(list.index("csdn"))
print(list.index("ndsc",5,6))

运行结果:
3
6

append()添加数组元素

  • 作用:添加新元素进数组
  • 用法:a.append(元素)
  • 举例:
a=[1,2,3,4,5]
a.append(6)
print(a)

运行结果:
1,2,3,4,5,6
在这里插入图片描述
这就是今天的题啦!!!
对于爬虫来说这些都是很基础的知识,我作为小白也在努力学习中,如果过程中有什么问题,欢迎评论区交流
大家一起好好成长吧!我们明天见!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值