冷门知识之1- np.arange()生成浮点步长的序列

本文介绍了Python numpy库中arange函数的使用方法,包括生成一维等差序列、指定起始和终止值、设置浮点步长及通过reshape生成二维数组等应用场景。
在本人的毕设过程中使用到的python的numpy库,numpy简称np吧。
整个NumPy库的基础是ndarray(N-dimensional array, N维数组)对象。

np中有个生成等差序列的函数arange(),使用方法如下,本人是在阿里云上的ipython上进行操作的。

如果要生成一个从数字0开始的,递增加1的数组,则只传入结尾的数组即可

In [17]: np.arange(10)
Out[17]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
如果不想以0作为起始值,可自己指定,这时需要两个参数: 起始值,结束值
In [18]: np.arange(4,10)
Out[18]: array([4, 5, 6, 7, 8, 9])

!!!上述两个操作在python原生的range函数也能做到,但是Python自带的range函数只能使用整数作为步长,而np的arange方法确定生成浮点步长的等间距序列

如果想生成等间距的数组,那么可以指定第三个参数
In [20]: np.arange(1,3,0.5)
Out[20]: array([ 1. , 1.5, 2. , 2.5])
用arange也生成二维数组,但要结合reshape函数
In [21]: np.arange(0,12).reshape(3,4)
Out[21]:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])

### 抖音视频 CDN 地址的生成机制 抖音视频内容通常通过 CDN(Content Delivery Network)进行分发,以提高用户访问速度和减少服务器负载。CDN 地址格式为 `"v"+数字+"-dy.ixigua.com"`,例如 `v1-dy.ixigua.com`、`v3-dy.ixigua.com`、`v5-dy.ixigua.com` 等 [^1]。 这些地址由抖音后端服务动态分配,通常基于以下因素: 1. **地理位置**:CDN 会根据用户的地理位置选择最近的边缘服务器,以优化网络延迟和带宽利用率。 2. **服务器负载情况**:CDN 会根据当前节点服务器的负载情况动态分配请求,确保整体系统的稳定性与性能。 3. **视频内容热度**:热门视频可能会被缓存到多个 CDN 节点,而冷门视频可能仅存储在特定区域的服务器上。 4. **协议与加密参数**:部分视频链接可能包含签名参数或加密字段,用于防止未授权访问,例如 `_signature` 或 `dytk` 参数 [^2]。 每个视频的最终 CDN 地址是通过 API 请求获取的,该 API 返回的数据结构中包含多个可用 CDN 域名供客户端选择使用。例如,某个视频的 JSON 数据中可能包含如下字段: ```json { "video": { "play_addr": { "url_list": [ "https://v9-dy.ixigua.com/example_video.mp4", "http://v3-dy.ixigua.com/example_video.mp4" ] } } } ``` 客户端(如抖音 App)通常会选择第一个可用地址进行播放或下载,也可能依据网络状况自动切换至其他 CDN 地址。 ### 示例代码:解析视频地址并下载 ```python import requests def download_video(url, output_path): headers = { 'User-Agent': 'Mozilla/5.0', 'Referer': 'https://www.douyin.com/' } response = requests.get(url, stream=True, headers=headers) if response.status_code == 200: with open(output_path, 'wb') as file: for chunk in response.iter_content(1024): file.write(chunk) # 示例调用 video_url = "https://v9-dy.ixigua.com/example_video.mp4" download_video(video_url, "downloaded_video.mp4") ``` ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值