
Mac OS
文章平均质量分 60
auspark
MacOS Objective-C、C、C++、Python、Lua、Shell
展开
-
macOS 开发 - 打包 PKG(使用 Packages)
一、软件准备可以安装下面几种软件,本次以 Packages 为例,下载 Packages 即可。1、Packages (推荐)下载地址:http://s.sudre.free.fr/Software/Packages/about.html2、PackageMaker是之前 Xcode 自带的pkg 打包工具,网传在 /Development/Utility 文件夹,但目前没有这个文件夹,也不在 ~/library/Developer 这个文件夹。正确方式是前往官网下载 Auxiliary Tools转载 2022-07-13 14:51:12 · 2691 阅读 · 0 评论 -
MacOS 检查 pkg包的安装路径
MacOS上的pkg文件安装后,并不会提示具体的安装路径,我们可以使用pkgutil共计来检查$ pkgutil --pkgscom.oracle.jdk8u201com.ni.ni4882.runtime.LibExtcom.ni.NI-VISA_Runtime.LibAppSupp.pkgcom.picotech.picosdkcom.picotech.picoscope6..................它会出一个很长很长的列表,列出所有的安装过的package-id原创 2021-12-02 09:52:07 · 4465 阅读 · 1 评论 -
Homebrew更换为国内镜像
1. homebrew:macOS(或 Linux)缺失的软件包的管理器2. 官网:https://brew.sh/index_zh-cn3. 官网安装命令:/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"4. 安装时报告错误,而且速度巨慢==> Checking for `sudo` access (which may request.原创 2021-09-14 18:04:54 · 3164 阅读 · 0 评论 -
MacOS NSComboBox如何实现拖拽一个文件显示路径
软体中需要实现拖拽选择文件, 并存储选择历史记录的功能, 所以选择使用NSComboBox作为控件, 设置其为不可编辑, 实现拖拽效果如下要想实现拖拽的功能, MacOS Appkit给我们提供了几个基础类:Drag 相关类和协议位于 AppKit 中NSDraggingImageComponentNSDraggingItemNSDraggingSessionprotocols// Protocols:NSDraggingInfoNSDraggingDestination原创 2020-09-24 15:31:04 · 703 阅读 · 0 评论 -
生成Xcode中各个尺寸的Mac App Icon
在Mac App都有一个图标, 在Assets.xcassets/AppIcon中需要的像素尺寸很多,在网上一次只能生成一个, 太过麻烦了, 本来想省事, 结果还不如自己写个来的方便, 也不复杂!#import <Foundation/Foundation.h>#import <Cocoa/Cocoa.h>void saveImage_png(NSImage *image,NSString *name){ NSData *data = [image TI.原创 2020-09-16 09:40:22 · 1420 阅读 · 0 评论 -
macOS开发之NSTableView的应用详解
NSTableView的应用详解一、引言和iOS开发中的UITableView有很大差别,NSTableView并非是一个可滚动的列表视图,其是一个不可滚动、支持多列多行的原始列表视图。若要使NSTableView支持滚动,通常会将其嵌套入NSScrollView控件中。与UITableView类似,NSTableView的数据也是用过DataSource代理来提供,通过Delegate代理来进行表格视图的定制化。在OS X v10.6版本之前,NSTableView中行数据载体视图必须是NSCell的转载 2020-09-10 14:07:32 · 1944 阅读 · 0 评论 -
python中拷贝对象的区别
一、赋值、引用在python中赋值语句总是建立对象的引用值,而不是复制对象。因此,python变量更像是指针,而不是数据存储区域这点和大多数语音类似吧,比如C++、Java等1、先看个例子:values=[0,1,2]values[1]=valuesprint(values) # [0, [...], 2]预想应该是:[0,[0,1,2],2],但结果却为何要赋值无限次?可以说 Python 没有赋值,只有引用。你这样相当于创建了一个引用自身的结构,所以导致了无限.转载 2020-06-30 15:14:21 · 216 阅读 · 0 评论 -
VISA函数
Tektronix示波器可以使用NI-VISA驱动来控制, 安装NI-VISA后, 存在/Library/Frameworks/VISA.framework,此framework种全部是C语言接口, 查到了一些这些接口的使用和含义, 在此记录学习:https://blog.youkuaiyun.com/yaogangganggang/article/details/103366396https://blog.youkuaiyun.com/yu__jia/article/details/46044083VISA函数转载 2020-06-11 08:51:50 · 4435 阅读 · 0 评论 -
python docx删除word段落
使用python-docx编辑一个docx文档时, 对添加的方法使用很多, 但有时候也会用到删除和修改python-docx中并没有提供delete()方法, github上给出了解决方法:https://github.com/python-openxml/python-docx/issues/33def delete_paragraph(paragraph): p = paragraph._element p.getparent().remove(p) # p._p原创 2020-06-10 09:33:16 · 14252 阅读 · 22 评论 -
python使用docx模块读写docx文件的方法与docx模块常用方法详解
一,docx模块Python可以利用python-docx模块处理word文档,处理方式是面向对象的。也就是说python-docx模块会把word文档,文档中的段落、文本、字体等都看做对象,对对象进行处理就是对word文档的内容处理。二,相关概念如果需要读取word文档中的文字(一般来说,程序也只需要认识word文档中的文字信息),需要先了解python-docx模块的几个概念。1,Document对象,表示一个word文档。2,Paragraph对象,表示word文档中的一个段落3,Para转载 2020-06-09 15:11:20 · 12908 阅读 · 2 评论 -
python解析json数据
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。本文简要介绍Python中的相关操作,原文见Python处理Json数据。数据格式可以简单地理解为键值对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关原创 2020-06-09 10:25:34 · 262 阅读 · 0 评论 -
python-docx文档
python-docx官方文档地址安装 pip3 install python-docx pip3 install python-docx -i https://pypi.douban.com/simple 豆瓣镜像下载内联对象一般包括:段落(paragraph)、图片(inline picture)、表(table)、标题(heading)、有序列表(numbered lists)、无序列表(bulletslists)创建文...转载 2020-06-09 09:53:21 · 3480 阅读 · 2 评论 -
python docx通过关键字标注字体以及颜色大小等
主要使用python-docx 与pandas因为python-docx对表格的解析不够友好且效率低,故需转换一次代码如下# coding:utf-8import os, reimport docxfrom docx.document import Document as dcfrom docx.oxml.table import CT_Tblfrom docx.oxml.text.paragraph import CT_Pfrom docx.table import _Cell,转载 2020-06-09 09:34:27 · 3023 阅读 · 3 评论 -
Objective-c循环遍历资料夹内容
# NSHomeDirectory() - (void)scanAndListFiles:(NSString *)path;{ // 1.判断文件还是目录 NSFileManager * fileManger = [NSFileManager defaultManager]; BOOL isDir = NO; BOOL isExist = [fileManger fileExistsAtPath:path isDirectory:&isDir]; if (...原创 2020-06-09 09:20:10 · 227 阅读 · 0 评论 -
NSOpenPanel&NSSavePanel
NSPanel 的使用https://github.com/JHiroGuo/JHPanelNSPanel包含NSOpenPanel文件打开面板和NSSavePanel文件保存面板。是用来提供文件打开路径选择 和文件保存路径选择的两种系统样式。NSOpenPanel用于文件打开路径或者文件保存路径的选择属性+(NSOpenPanel *)openPanelWithTitleMessage:(NSString *)ttMessage转载 2020-06-09 09:12:55 · 906 阅读 · 0 评论 -
NSTableCellView中如果是NSTextField, 在编辑状态下如何获取到NSTextField新输入的值
主要为NSTextField的delegate设置和实现,1. 在storyboard中要设置好NSTextField的delegate2. 实现delegate方法此处view controller是否继承实现NSTextFieldDelegate都无关紧要, 这是因为在NSControll中将以下几个方法用类目的方式, 添加到了NSObject内@interface NSObject(NSControlSubclassNotifications)- (void)co...原创 2020-05-18 17:53:43 · 689 阅读 · 0 评论 -
Mac OS给 App菜单栏某菜单item添加动作的过程
这个过程是充分使用FirstResponse:1. 新建工程, 并打开storyboard (新建过程省略)2.以File菜单为例, 为其添加一个LogFolder的menu item3. 在view controller中添加一个打开documents资料夹的IBAction function4. 新建此方法后, 其方法将能够在First Responder中找到5. 此时将File菜单中新建的LogFolder menu item与First Responder中的此方法原创 2020-05-18 16:02:33 · 879 阅读 · 0 评论 -
NSTableView右键单击弹出菜单(menu)的设置方法
此方法主要的社会在于NSTableView中的setMenu:方法使用1. 在storyboard中建立menu, 具体过程见下图2. 拖拽menu item(8)和menu separator(9)到新建的menu(7)内,设置好每一个menu的title, 并排列好格式, 保存3. 在view controller中将menu建立IBOutlet,@property (strong) IBOutlet NSMenu *tableMenu;4. 设置table的menu.原创 2020-05-18 15:16:12 · 826 阅读 · 0 评论 -
Mac OS -- ORSSerialPort打开serialPort时提示错误Operation not permitted
导入ORSSerialPort, 在打开serial port时, 系统报出来一下错误,Error Domain=NSPOSIXErrorDomain Code=1 "Operation not permitted" UserInfo={NSFilePath=/dev/cu.usbserial-Fixture1, NSLocalizedDescription=Operation not permitted}原因及解决办法:1. 权限问题,原因:电脑启用了SIP(System Integri..原创 2020-05-18 11:17:47 · 1381 阅读 · 0 评论 -
使用Typora添加数学公式
Typora上进行数学公式的编辑方法1. 打开Typora选择数学模块点击“段落”—>“公式块” 快捷键Ctrl+Shift+m 单独的公式块编辑:“$$”+回车 在一行文字内插入公式: $公式 $以上三种方式都能打开数学公式的编辑栏,如下:2. 添加数学公式输出美观规范的数学公式,要清楚它们的格式和代码,在编辑栏中输入代码,对应的公式会在下面实时显示,如:...转载 2020-05-05 11:21:21 · 2995 阅读 · 0 评论 -
C++嵌入Lua脚本
Mac项目集成Lua新建一个控制台应用程序。 打开Xcode,New->Project->OSX->Command Line Tool,取名为Lesson01如下图所示: 下载Lua code, Lua-5.3.3 a>下载完成后, 解压 b> terminal中cd 到刚刚解压下得到的路径下, 如" cd ~/Downloads/lua-5.3.5...原创 2020-05-01 13:15:27 · 371 阅读 · 0 评论 -
NSTableCellView的使用
NSTableView中的NSTableCellView最添加控件从库中拖各种view控件到NSTableCellView中,如image view,如check button,如round rect button分别拖入到NSTableCellView中从Connections inspector中可以看到,在NSTableCellView中可以看到有几个本身存在Outlets,包括...原创 2020-04-26 14:09:57 · 1770 阅读 · 2 评论 -
python 定时任务的几种常见方式
1、while循环中使用sleep缺点:不容易控制,而且是个阻塞函数def timer(n): ''' 每n秒执行一次 ''' while True: print(time.strftime('%Y-%m-%d %X',time.localtime())) theTask() # 此处为要执行的任务 ...原创 2020-04-23 18:39:20 · 424 阅读 · 0 评论 -
python进程间通信---队列和管道
python进程间通信---队列和管道(multiprocess.Queue、multiprocess.Pipe) 进程间通信:IPC(inter-Process Communication)1、队列概念介绍: 创建共享的进程队列,Queue是多进程的安全的队列,可以使用Queue实现多进程之间的数据传递。# Queue([maxsize]) 创建共享的进程队列。参...转载 2020-04-23 16:15:07 · 965 阅读 · 0 评论 -
python multiprocessing.pool.MaybeEncodingError
代码:from multiprocessing import Poolp = Pool(5)p.map(download_file, file_lists)错误信息:multiprocessing.pool.MaybeEncodingError: Error sending result: 'HTTPError()'. Reason: 'PicklingError("Can'...转载 2020-04-23 14:21:11 · 2837 阅读 · 0 评论 -
python multiprocessing.Pipe的close()问题
主要讲close问题,和recv卡住问题recv卡住是因为他要等待管道中有数据接收,如果没数据就卡住,但是我想触发EOFError,看被人解释是当管道中数据没有东西时就会抛出EOFError,但是我这里死活不抛出,就是卡住。后来发现是close的问题,但是下面的代码我也加了close了,from multiprocessing import Processfrom multiproce...原创 2020-04-22 15:23:51 · 2542 阅读 · 1 评论 -
shell基础之变量及表达式
本节内容1. shell变量简介2.定义变量3.使用变量4.修改变量的值5.单引号和双引号的区别6.将命令的结果赋值给变量7.删除变量8.变量类型9.特殊变量列表10.退出状态11. shell表达式与运算符 11.1条件表达式 11.2整数比较符 11.3字符串比较符 11.4文件测试 ...转载 2020-04-21 13:35:53 · 334 阅读 · 0 评论 -
MacOS XPC的使用入门
MacOS:10.14,Xcode:11.01、随意创建一个工程,可以是App projectXcode -> File -> New -> Project... -> macOS -> Application -> App -> click Next填写Product Name(XPCDemo) ->选择或者不选择Team账号 -> ...原创 2020-04-21 10:54:14 · 3337 阅读 · 0 评论 -
MacOS CoreData(2)coredata DB连接/访问
ViewController.h文件// ViewController.h文件#import <Cocoa/Cocoa.h>#import <CoreData/CoreData.h>#import "Person+CoreDataClass.h"#import "Person+CoreDataProperties.h"@interface ViewCo...原创 2020-04-20 16:29:02 · 293 阅读 · 0 评论 -
MacOS coredata(1)创建工程
1、创建:xcode -> File -> New -> project... -> App || Command Line Tool -> Next -> 勾选 Use Core Data 2、创建Entity,设置字段和属性选中CoreDataDemo.xcdatamodeld文件 -> Add Entity -...原创 2020-04-20 16:01:40 · 378 阅读 · 0 评论 -
python简单爬取图片的一点总结
折腾了好几天,终于开发了一个能够爬取mzitu的单进程程序,虽然只有短短的百十行code,但由于没怎么搞过爬虫,有很多的坑都是费了很大劲儿才爬出来,不过不断的查询、实验等学到的东西还真挺受用的:学习了:1、requests,urllib2,BeautifulSourp,selenium+webdriver(mzitu没涉及到,但还是学了下)2、每级URL的变化和提取...原创 2020-04-17 09:57:31 · 514 阅读 · 0 评论 -
Mac OS python selenium webdriver chome
1. chome浏览器安装和driver安装a)chrome浏览器下载b)chome driver下载地址 driver下载时,选择mac64版本的,请与chrome浏览器的版本匹配,至少是接近,否则易引起错误 chome driver下载完毕后,解压后我直接将这个可执行程序放到了/usr/local/bin中2、安装python的selenium,pip insta...原创 2020-04-16 17:25:51 · 715 阅读 · 0 评论 -
python urllib2.urlopen()获取到html内容乱码解决
1、问题:在用urllib2.urlopen()打开的网页显示乱码,查看原网页其用的charset='gb2312'所以见获取到的网页用decode('gb2312')解码,但是发现偶尔能行,大部分时候不行,非常奇怪,不行的时候报错:UnicodeDecodeError: 'gb2312' codec can't decode bytes in position 11346-11...原创 2020-04-15 14:21:47 · 1551 阅读 · 1 评论 -
python去除字符串空格的方法
1、strip():去除开头/结尾的空格a = ' a b c 'a.strip()# 'a b c'2、lstrip():去除起始处空格a = ' a b c 'a.lstrip()# 'a b c '3、rstrip():去除结尾处空格a = ' a b c 'a.rstrip()# ' a b c'4、replace()方法:替换字符串,replac...原创 2020-04-14 12:20:28 · 342 阅读 · 0 评论 -
Python BeautifulSoup教程
BeautifulSoup4是爬虫必学的技能。BeautifulSoup最主要的功能是从网页抓取数据,Beautiful Soup自动将输入文档转换为Unicode编码,输出文档转换为utf-8编码。BeautifulSoup支持Python标准库中的HTML解析器,还支持一些第三方的解析器,如果我们不安装它,则 Python 会使用 Python默认的解析器,lxml 解析器更加强大,速度更快...转载 2020-04-14 10:31:49 · 313 阅读 · 0 评论 -
python urllib模块(urlopen/response/request/headler/异常处理/URL解析)
简介Urllib是Python内置的HTTP请求库。它包含四个模块:urllib.request :请求模块 urllib.error :异常处理模块 urllib.parse url : 解析模块 urllib.robotparser :robots.txt解析模块,用的比较少相比Python2变化:Python2: import urllib2 response=urlli...转载 2020-04-13 15:08:45 · 1902 阅读 · 1 评论 -
python中文字符串比较时出现编码错误
code:if n_list[i]=="国产IC": pass错误信息:UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode原因:字符串中有中文,在python做比较时,因为编码方式不同而导致解决办法:添加系统中文编码方式# -*- coding...原创 2020-04-13 14:35:31 · 754 阅读 · 0 评论 -
python读取excel:xlrd
***模块:***xlrd***安装:***pip install xlrd导入:import xlrd打开文件:workbook = xlrd.open_workbook(excelFile) #文件名及路径#路径/文件名有中文时,使用r''原生字符定义#也可以使用解码函数excelFile = excelFile.decode('utf-8')获取workbook中shee...原创 2020-04-13 11:12:15 · 293 阅读 · 0 评论 -
Mac下pip install pycurl报错解决办法
Mac OS python2.7pip install pycurl错误信息:解决办法:在指令后加--user, 即pip install pycurl --user,执行即可原因:--user指定将 pip 安装的包默认安装在用户目录,使用本地的SSL$ pip install pycurlDEPRECATION: Python 2.7 will reach the en...原创 2020-04-12 16:53:40 · 747 阅读 · 2 评论 -
MacOS隐藏文件/文件夹
隐藏:terminal中输入指令 chflags hidden +空格+文件/资料夹完整路径注:可用鼠标拖拽文件/资料夹到terminal还一个不太安全的方法:terminal中输入指令:mkdir+空格+.+资料夹/文件名 : 创建隐藏的资料夹 mv资料夹/文件名 .资料夹/文件名 :总之就是在资料夹前强制加".",使之隐藏。注:mac默认的以"...原创 2020-04-09 17:10:01 · 442 阅读 · 0 评论