python是不是很简单_为什么很多人都说 Python 简单?

说Python简单,一般是在说Python用起来简单,用Python并不用变成程序员。

其中有一个很重要的原因是标准库和第三方库接口比较高级,设计自然。文档是写给陌生人看的,指向比较直接。这样想做什么事,找一个相关的流行包就可以开工了(经常标准库都会告诉你去哪找),遇到问题也没太大压力。能够让你专注自己应该做的工作,该科研科研,该分析分析,该攻城攻城。

而其他高级语言的库经常还是很底层的。文档像是写给同事看的,求的是体系完备,要逼迫用户先搞明白背景知识才能好好干活。一不小心你就变成程序员了。

---- 没有对比,就没有伤害 ----

想通过程序控制云上的一个服务(需要一键切换、关机退出等懒人功能),其中非常简单的一个任务-关闭服务:

# 平台API是这么说的:

curl -XPUT -H "username: " -H "Authorization: token " "https://api.tenxcloud.com/api/v2/clusters/{cluster-id}/services/batch-stop" -d '{"services": ["your-service-name"]}'

Python:

看一下标准库,告诉你:别看了,推荐更高级的包requests:

然后request包文档长成这样,问题就解决了:

# Python3 requests:跟curl区别不大

import requests

req = requests.put("https://api.tenxcloud.com/api/v2/clusters/{cluster-id}/services/batch-stop", headers={"username":"","Authorization": "token "}, data='{"services": [""]')

# 其实标准库也没多复杂,为什么要“妄自菲薄”呢

from urllib.request import urlopen, Request

req = urlopen(

Request("https://api.tenxcloud.com/api/v2/clusters/CID-ff8a9093353f/services/batch-stop",

data=b'{"services": ["socksoffice"]}',

headers={"username":"","Authorization": "token "},method="PUT")

)

然后你就完活可以走人了,对http还是什么也不知道。照猫画虎,Time - 5m HTTP +1XP

C#:

到了C#,文档约等于链接列表。最后你还得去看stackoverflow才能找找线索从哪开始看,然而并没有一次说明白的例子。

文档下钻到GetRequestStream,还在教你怎么设定stream长度,编码写Bytes。

写好代码,抛出一个无行号的System.dll错误。好吧,只好做断点调试,定位到还有cache的设定问题。回到stackoverflow找到解决方法,终于...

//C#:学会如何一步一步做好Header\Method\CachePolicy\RequestStream

using System.Net;

using System.IO;

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);

request.Headers.Add("username: ");

request.Headers.Add("Authorization: token ");

request.Method = "PUT";

//Define a cache policy for this request only. 请学习cacherequest.CachePolicy = new System.Net.Cache.HttpRequestCachePolicy(System.Net.Cache.HttpRequestCacheLevel.BypassCache);

request.ContentType = "application/json;charset=utf-8";

// 请学习requeststream是怎么回事,write管什么,flush管什么using (var streamWriter = new StreamWriter(request.GetRequestStream()))

{

streamWriter.Write(data);

streamWriter.Flush();

}

恭喜您,Time -50m, HTTP +10XP。喂,我根本没想点这个技能点好么,我只是想懒一下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值