首先需要安装 pyinstaller 库。 pip install pyinstaller 就可以了。
Python 程序都是脚本的方式,一般是在解析器里运行,如果要想要给别的计算机使用,需要提前安装Python解析器和相关包才可以运行,为了在 Windows(或其它系统里) 里方便发布,我们将.py文件,编译成一个可执行文件,并且打包所需要库文件,只需要点击一个可执行文件运行,而无需安装Python和相关库文件。这样发布给用户使用何不美哉。
👋 你好,我是 Lorin 洛林,一位 Java 后端技术开发者!座右铭:Technology has the power to make the world a better place.
以下内容参考https://blog.csdn.net/qq_36556893/article/details/89946636
Windows sockets(简称 Winsock) 是微软的窗口系统结构 (WOSA) 的一部分。它是起源于UNIX上的 Berkeley Software Distribution(BSD) 版本的套接字、并为 Windows 进行了专门地扩展。 Internet 是在 UNIX系统上发展起来的 ,在 UNIX 上有许多成熟的编程接口 ,其中最通用的是一种叫做 sockets(套接字) 的接口。套接字的实质是通信端点的一种抽象 ,它提供一种发送和接 收数据的机制。网络软件商为 Windows 开发一套标准的、通用的 TCP/ IP 编程接口 ,并使之类似于 UNIX下的 sockets ,这就是 Windows sockets ;Windows socket 的实现一般都由两部分组成 :开 发组件和运行组件。开发组件是供程序员开发 Winsock 应用程序使用的、它包括介绍 Winsock实现的文档、Winsock 应用程序接口 (API) 引入库和一些头文件。运行组件是 Winsock 应用程序接口的动态连接库(DLL) ,文件名为 Winsock. DLL ,应用程序在执行时通过装入它来实现网 络通信功能。 最初 ,Winsocket1. 1 版是专门为 Internet 设计的 ,现在的 2. x 版己经不再限于 Internet 和TCP/ IP 协议 ,它通过提供扩展的 API 编程接口 ,把自己的应用范围扩大到现存的和正在出现 的各种网络和协议 ,包括 PSTN、ISDN、无线网、所有的局域网协议、异步传输模式 ATM 等等 ;并且允许应用程序对所建立连接的可靠性、冗余度和带宽进行控制。由此可见 ,Winsock 有着广泛的应用。 Windows sockets 是 Windows 下网络编程的规范。这套规范是 Windows 下得到广泛应用的、开放的、支持多种协议的网络编程接口。它定义并记录了如何使用 API 与 Internet 协议族(IPs、通常我们指的是 TCP/ IP) 连接 ,尤其要指出的是所有的 Windows sockets 实现都支持流套接字和数据报套接字。当我们为客户机/ 服务器开发一个特殊的应用程序时 ,我们可以通过套接字来交换我们的数据结构和数据报 ,以完成应用程序之间的通信。应用程序调用 Winsock 的 API实现相互之间的通讯。Winsock 又利用下层的网络通讯协议功能和操作系统调用实现实际的通讯工作。 它们之间的关系如图 1 所示 :
你会发现dist下面只有一个可执行文件,这个单文件就可以发布了,可以运行在你正在使用的操作系统类似的系统的下面。
RTTI. 运行时的时候类型的识别. 运行时类型信息程序.能够使用基类(父类)指针 或者引用 来检查这些指针或者引用所指的对象. 实际派生的类型
还有微博九宫格图 https://weibo.com/2717930601/JjpKtlUZ9 :
大家好,又见面了,我是你们的朋友全栈君。 读者朋友们可能天天使用Visual C++这个强大的工具来开发应用程序,不知道注意到没有,Visual C++每次装载一个项目的时候,为了使项目加载过程不至于太单调,会在状态栏的左半部分会出现一个装载进度条,用来即时显示Visual C++装载项目的进度,当项目装载完毕后,进度条隐藏。那么这个功能是如何实现的呢?为了说明该功能的实现原理,本例提供了一个范例程序prgsbar,它演示了在编辑视图里显示文本文件,在加载文本文件时,在界面的状态条中的进度指示器仿真显示文件的加载过程,当文本装载完毕后,进度条隐藏。由于该程序在装载文件显示的进度条时无法进行拷屏操作,所以这里没有给出状态条中显示进度条的界面效果图,读者可以运行本书所带光盘中的程序代码观看相应的效果。 一、实现方法 虽然Visual C++中的MFC类提供了标准的进度指示器控件(progress control),但是我们不能在状态栏里直接使用这个控件,要解决这个问题,可以创建一个可重用C++类CProgStatusBar,这个类从CStatusBar派生,用来来实现状态条中的进度指示。整个实现过程不是很难,思路是在状态栏创建一个进度指示器控制,把它作为子窗口来对待,然后根据不同的状态来显示或者隐藏进度指示器。 在具体实现CProgStatusBar类的过程中,首先在CProgStatusBar派生类中加了一个CProgressCtrl类型的数据成员–m_wndProgBar,然后重载CstatusBar类的二个重要成员函数:OnCreate()、OnSize(),最后还要在该类中添加一个自定义成员函数OnProgress()。在上述三个函数中, OnCreate()负责在状态栏第一次被创建时接收控制,继而创建进度指示器并将它初始化为一个子窗口,它的实现代码如下: int CProgStatusBar::OnCreate(LPCREATESTRUCT lpcs) { lpcs->style |= WS_CLIPCHILDREN; VERIFY(CStatusBar::OnCreate(lpcs)==0); VERIFY(m_wndProgBar.Create(WS_CHILD, CRect(), this, 1)); m_wndProgBar.SetRange(0,100); return 0; } OnCreate()函数在状态栏的式样中加了一个WS_CLIPCHILDREN,它告诉Windows不要绘制子窗口以下的状态栏区域,这样可以减少屏幕闪烁。接着OnCreate()函数创建进度指示器控件并将它的范围设置成[0,100]。注意在这里创建进度指示器控件时没有用WS_VISIBLE,因为我们要实现的目标是仅仅当装载文件时进度条才显现,其余时间内应用程序都隐藏它。 熟悉Windows编程的人都清楚,无论何时,只要在某个窗口里添加子窗口,那么一定要负责管理它的大小尺寸,也就是说,当父窗口大小改变后,子窗口的大小也要跟着作相应的改变。一般来说,这个工作由父窗口的WM_SIZE消息处理函数OnSize()来作,所以我们也要处理该类的OnSize()函数。 void CProgStatusBar::OnSize(…) { CStatusBar::OnSize(…); CRect rc; GetItemRect(0, &rc);//获取状态条的第一个窗口的尺寸; m_wndProgBar.MoveWindow(&rc,FALSE);//移动进度条到状态条的第一个窗口; } 从上述代码可以看出,CProgStatusBar::OnSize()将进度指示器放在了状态栏的第一个窗格,这个窗格通常用来显示程序的”就绪”信息和命令提示信息。注意这里不论进度指示器是处于可见状态还是隐藏状态,MoveWindow都照样起作用–所以即便是进度指示器处于隐藏状态,其窗口大小同样是可调的。 调整好进度指示器的窗口大小后,下面要作的就是进度指示器的显示,进度指示器当前进度状态的显示在CProgStatusBar::OnProgress中完成。它有一个类型为UINT的入口参数:参数值的范围从0到100,表示进度百分比,0表示进度没开始,100表示全部完成。如果这个参数的值大于0,则OnProgress显示进度控制并设置指示器的位置;如果参数值等于0,则 OnProgress隐藏进度控制。 虽然子窗口控件通常都是放在父窗口能绘制的区域的最上面,但这样做在绘制方面是有一定风险的。在隐藏/显示进度控制时尤其如此,这时候会出现两个问题:第一,因为进度指示器显示在状态栏的第一个窗格位置,所以如果进度条指示器
PyInstaller 可以将 python 程序打包成一个单一的 exe 可执行包
当我们创建一个python项目,最终的成果如果希望用户能够不依赖于python源代码也能够正常的执行,就会比较的人性化。因为源代码数量众多,很难让每个用户都自行管理所有的源代码,因此我们需要对源码进行编译构建。对于使用场景不是很复杂的,我们可以直接做成一个可执行文件,这样开发者只需要维护可执行文件的功能正常,以及对于各种平台的兼容性较好,这就可以了。这里我们介绍如何使用pyinstaller去通过python源码构造一个可执行文件。
2、使用DB Browser把这个文件加进来,打开后可以看到表信息,这里用到的urls表中的url和last_visit_time字段
官网: http://www.pyinstaller.org/ 下载与操作系统相匹配的版本. 目前pyinstaller 只支持2.3 - 2.7。 不支持python.3
笔者安装了python3版本,然后IDE安装了Pycharm,感受一下python的开发环境
python3版本默认没有安装pip。 复制get-pip.py的内容:https://bootstrap.pypa.io/get-pip.py 在python环境下运行。
有一天,我突然想找点事做,想起一直想学但是没有学的C语言,就决定来学一下。 可是怎么学呢?看书的话太无聊,报班学呢又快吃土了没钱,不如去B站看看? 果然,关键字C语言搜索,出现了很多C语言的讲课视频:
Oracle 11g RAC中,发现oc4j以及gsd服务都处于offline状态,这是Oracle 11g RAC默认情形。即便如此,并不影响数据库的使用,因为 oc4j 是用于WLM 的一个资源, WLM在 11.2.0.2 才可用。GSD则是用于支持dbca,srvctl,oem等的交互工具。本文描述将这两个服务切换到online。
种基础构件,包括队列、交换器、绑定、虚拟主机等,他们组成了AMQP协议消息通信的基础,而这些构件以元数据的形式存在
Oracle 11g RAC中crs_stat命令较之前的版本多出了很多新的不同的资源类型,缺省情况下,使用crs_stat -t来查看资源是密密麻麻一大片,看起来着实费力。作者Paul Elbow, Enkitec为我们提供了一个crsstat脚本以更清晰的格式来展现Oracle 11g RAC下的所有资源类型,见本文下面的描述。
Oracle 11g RAC安装时,在第一个节点执行root.sh时遭遇了CRS-0184/PRCR-1070,Google了很多帖子也没有找到解决办法。呜呜,还是静下心来看日志!!最后的发现原来是一个不经意的小问题,如下面的描述。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xuzhina/article/details/38352179
语法:sed 选项 's/搜索的内容/替换的内容/动作' 需要处理的文件 动作一般是打印p和全局替换g
我们已经学过了LAMP和LNMP架构;针对的开发语言是PHP;可以说PHP是一门开发Web程序非常流行的语言;早期的比较流行的是asp,是在windows平台上运行的一种编程语言;但是因为安全性不高;所以越来越多做网站的人用Php去开发网站,相对来说也是比较安全的。 除了PHP外,还有一门语言叫java;java是一门非常庞大的开发语言;不仅仅是可以开发开网站;也可以开发大型的软件、工具、甚至是游戏都可以;tomcat实际上是一个中间件,用来运行Java语言写的网站;那我们Php写的代码,要用php去解析;java就要用tomcat加上JDK一起去解析。
如果你已经尝试了100种错误方法,恭喜你,找到家了。这个是99.9%能保证成功的安装方式。如果你第一篇就看到这个,更加恭喜你,你少走了一万里弯路!
笔者在ubuntu16.04使用pip3安装uwsgi时报错了,报错信息如下 leslie@leslie-TWS:~$ sudo pip3 ×××tall uwsgi The directory '/home/leslie/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owne
jenkins页面端提示需要升级jenkins 2.361.1,由于是测试服务器,所以就升级下,然后就有不可描述的事情发生了。
首先做一下binutils [root@T-bagwell binutils-2.21]# ./configure --build=i686-pc-linux-gnu --target=arm-linux --prefix=/usr/local/arm/gcc-4.6.0/ --disable-nls --enable-shared --disable-multilib [root@T-bagwell binutils-2.21]# make configure-host [root@T-
No, not the story of how, in 1991, Linus Torvalds wrote the first version of the Linuxkernel. You can read that story in lots of Linux books. Nor am I going to tell you thestory of how, some years earlier, Richard Stallman began the GNU Project to create a freeUnix-like operating system. That’s an important story too, but most other Linux bookshave that one, as well.
tcpdump是在Linux下抓包非常好用的命令,但是最近遇到了一个奇怪的抓包结果,就是使用any抓所有interface的时候会显示IP Invalid:
Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包
Shell正则表达式 正则表达式普通常用的元字符 . 匹配除了换行符以外的任意单个字符 * 前导字符出现0次或连续多次 .* 任意长度字符 ab.* ^ 行首(以...开头) ^root $ 行尾(以...结尾) bash$ ^$ 空行 [] 匹配括号里任意单个字符或一组单个字符 [abc] [^] 匹配不包含括号里任一单个字符或一组单个字符 [^abc] ^[] 匹配以括号里任意单个字符或一组单个字符开头
平时有很多碎片化时间,比如下班的地铁上,或者等待的时间,我们总喜欢拿出手机玩,这个时间也可以用来学习呢,当然佳爷自己也想学习英语,所以上下班的时间看看。
引言:由于我是在新的虚拟机上测试学习,正好听到同事讲一个朋友在gcc升级安装导致系统出问题,所以在安装gcc的时候一定要小心。
Google 对 Flutter 的目标一直是提供一个可移植的工具包,以构建媲美本机速度运行的精美UI,无论您使用的是哪个平台。为了验证该功能,我们首先关注于Android和iOS移动平台,我们已经在Google Play上看到了8万多个快速,精美的Flutter应用程序。
本文介绍了如何基于Unreal Engine 4和UE4的蓝图制作一个跨平台UI自动化测试框架,并利用这套框架进行性能测试。具体内容包括:实现环境准备、创建UI自动化测试框架、基于蓝图制作自动化测试脚本、执行自动化测试和结果输出。此外,还提供了相关的参考资料和代码示例。
最近,公司有几台java服务器经常出现can not allocate memory 的情况。导致SSH登录失败。
下面我们介绍一些方法来获取系统的版本,首先是通过查看Linux内核的方法,主要有2种方法:
通过libssl.so.1.1 => /usr/lib/x86_64-linux-gnu/libssl.so.1.1 (0x00007fa72fe20000)知道OPENSSL_LIB_DIR是 /usr/lib/x86_64-linux-gnu
Oracle官方下载 https://www.oracle.com/technetwork/java/javase/downloads/index.html
1) [root@SOR_SYS ~]# cat /proc/version Linux version 2.6.18-238.el5 (mockbuild@x86-012.build.bos.redhat.com) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-50)) #1 SMP Sun Dec 19 14:22:44 EST 2010 [root@SOR_SYS ~]#
linux内核和发行版的区别是:linux内核安装完成后没有用户界面和软件,是提供硬件抽象层、硬盘以及文件系统控制的核心程序;而linux发行版是在内核的基础上加入了用户界面和各种软件的支持。
与大家分享下RedHat Linux 5.5安装JDK+Tomcat并部署Java项目的步骤,希望对大家有用。
Linux中的cat命令连接文件并打印到标准输出设备上(通常是shell)。cat的最常见用法之一是显示文件,还可以即时创建文件,并可以直接在终端上进行基本编辑。
In 1994, the first Beowulf Cluster was built at NASA, using Linux, as an alternative to the very expensive HPC supercomputers. “Beowulf Clusters are scalable performance clusters based on commodity hardware, on a private system network, with open-source software (Linux) infrastructure. The designer can improve performance proportionally with added machines. The commodity hardware can be any of a number of mass-market, stand-alone compute nodes as simple as two networked computers, each running Linux and sharing a file system, or as complex as 1,024 nodes with a high-speed, low-latency network.” 1994年,在NASA,使用Linux建立了第一个Beowulf集群,作为昂贵的HPC超级计算机的一种替代品。 “Beowulf集群是基于商用硬件的可扩展的高性能集群,建立在专用的系统网络和开源软件(Linux)基础设施上。设计者可以通过按比例添加机器来提高性能。硬件可以是简单的只需两台联网计算机组成的计算节点,每个节点都运行Linux,并共享一个文件系统,或复杂的像具有高速,低延迟的1,024节点的网络。“
博客地址 : http://blog.csdn.net/shulianghan/article/details/42239705
PS:如上软件可以使用地址下载获取,推荐一个下载软件Proxyee Down,也可以下载某盘得文件,目前个人在使用,配合Google chrome使用完美。
领取专属 10元无门槛券
手把手带您无忧上云