Pandas的一些基础用法
首先我们导入一些‘业界标准’库
1 2 3 4 |
|
Pandas 里有两种常用的结构,一种叫DataFrame
,作为二维的一张表格;另一种叫Series
,是一维数组。
DataFrame
取单行和单列得到的都是Series
类型的对象。
追加数据
1
|
|
获取最后一列数据
1
|
|
按行遍历
1 2 |
|
前十行组成子DataFrame
1 2 |
|
获取名为 close 的 column
1 2 3 |
|
首先我们导入一些‘业界标准’库
1 2 3 4 |
|
Pandas 里有两种常用的结构,一种叫DataFrame
,作为二维的一张表格;另一种叫Series
,是一维数组。
DataFrame
取单行和单列得到的都是Series
类型的对象。
1
|
|
1
|
|
1 2 |
|
1 2 |
|
1 2 3 |
|
zsh中预留了一个chpwd()
用于hook各种cd命令,包括cd
pushd
popd
等。
首先打开~/.zshrc
,增加chpwd
函数。作用是在ccproj或其子目录,使用全局代理,否则关闭代理。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
其中allproxy
和noproxy
的定义如下:
开发者可以为 iOS 10 的 Messages app 创建 extension。用户在其中可以发送文字、表情、媒体文件、交互式消息(交互式消息即 interactive messages,是一种允许被对话的参与者更新状态的消息)。
第三方软件可以使用 Messages framework 创建两种 app extension: 表情包(Sticker packs)和 iMessage apps。这两种 app extension 都可以作为现有主 app 的 extension 来发布,也可以单独发布。
为了方便理解后文内容,强烈建议先玩一下:
1. Sticker pack 比如知乎刘看山
2. GamePigeon中的台球
3. 大众点评的订电影票
最近遇到了一个死锁crash,主线程在dispatch_once时卡住了:
1 2 3 4 5 6 7 8 9 10 |
|
卡死的代码很简单,世界上的单例基本上都是这么开的:
1 2 3 4 5 6 7 8 |
|
从2016年6月1号开始,苹果强制要求上架AppStore的应用支持IPv6-only network。
本文分为两部分:通过代码检查是否兼容IPv6-only网络,以及如何搭建IPv6-only网络的测试环境。旨在帮助快速检查app是否支持IPv6-only Network。可以当做Supporting IPv6 DNS64/NAT64 Networks中Ensuring IPv6 DNS64/NAT64 Compatibility一节的速成版本。
最便捷的检查方式是:找一台Mac,共享Internet到IPv6 DNS64/NAT64网络,然后让待测试设备连接到此网络,并测试app功能是否正常。
需注意,OS X 10.11后才支持创建IPv6 DNS64/NAT64网络。如果待测试设备不是iOS或OS X或macOS设备(比如要测试Andr**d上的app是否兼容IPv6-only网络),请确保设备支持RFC6106。
最近需要对UIWebView内请求的静态文件做缓存,还要把Gif替换成静态图以节约CPU资源等,于是查了一下私有API可不可以抓取UIWebView内的请求打个标记,以便NSURLProtocol中可以准确判断是不是UIWebView发出的请求。
经调试发现hookwebThreadWebView:resource:willSendRequest:redirectResponse:fromDataSource:
可以做这件事。调试过程就不细说了。
首先是dump类方法列表的函数:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
|
打开~/.lldbinit,在里面加入一行:
1
|
|
然后中断时,在lldb里打sb回车,就能打开模拟器当前运行的app的沙箱路径了。
Read on →这几天重写了OTHTTPRequest的大部分代码,发布了2.0版。
改动主要是上传文件功能,以前做的比较粗,是整个文件读到内存再上传的,不能支撑大文件上传,现在multipart/form请求全部改为流上传。此外增加了上传速度计算的功能。
最早做这个的原因是13年5月份做网易云音乐的下载性能优化,ASIHTTPRequest下载文件占用CPU时间太长,而当时iPhone4还有一定占有量,做了这个库来提升下载性能。
这次发布2.0,修改上传功能,是因为用ASIHTTPRequest做大文件上传时,进度回调有bug,尝试修结果没修成,于是花了点时间做了这个版本。
和1.0一样,整个框架基于NSURLRequest和NSURLConnection。
Read on →使用lldb调试app时,lldb经常提示view.bounds无法打印:
实际上是lldb启动时没有默认导入UIKit,所以UIKit中的方法无法识别。在lldb中使用@import手动导入
1
|
|
即可解决:
在开发Mac App时也是一样的,比如不导入AppKit则无法打印frame属性,手动导入AppKit即可:
1
|
|
但是大部分人都换有懒癌,对于每次调试都要手打一行命令是难以接受的。我们可以在main上加个断点:
在main中断时执行expr @import UIKit
,并自动continue:
然后在工程启动时就会自动导入UIKit到lldb了。
对于懒癌晚期的患者,每个工程单独配置还是挺麻烦的,可以在lldbinit中设置全局自动导入UIKit。在命令行中执行:
1 2 |
|
再重新启动调试即可(Xcode7测试时无需重启Xcode)。
Over