文件目录

Python开发【第六篇】:Python基础之模块

风流意气都作罢 提交于 2020-03-19 16:21:41
一、模块&包 模块(modue)的概念: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护。 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式。在Python中,一个.py文件就称之为一个模块(Module)。 使用模块有什么好处? 最大的好处是大大提高了代码的可维护性。 其次,编写代码不必从零开始。当一个模块编写完毕,就可以被其他地方引用。我们在编写程序的时候,也经常引用其他模块,包括Python内置的模块和来自第三方的模块。 所以,模块一共三种: python标准库 第三方模块 应用程序自定义模块 另外,使用模块还可以避免函数名和变量名冲突。相同名字的函数和变量完全可以分别存在不同的模块中,因此,我们自己在编写模块时,不必考虑名字会与其他模块冲突。但是也要注意,尽量不要与内置函数名字冲突。 模块导入方法 1. import 语句 import module1[, module2[,... moduleN] 当我们使用import语句的时候,Python解释器是怎样找到对应的文件的呢?答案就是解释器有自己的搜索路径,存在sys.path里。 ['', '/usr/lib/python3.4', '/usr/lib/python3.4/plat

PHP常用的文件操作函数集锦

允我心安 提交于 2020-03-19 13:58:15
一、 解析路径 1、 basename--返回路径中的文件名部分 string basename(string $path [,string $suffix]) 给出一个包含指向一个文件的全路径的字符串,本函数返回基本的文件名。如果文件名是以suffix结束的,那这一部分也会被去掉。 <?php $filename = __FILE__ ; echo $filename ; // C:\wamp\www\demo.php echo basename ( $filename ); // demo.php echo basename ( $filename ,'.php'); // demo ?> 扩展内容--魔术常量: __LINE__:文件中当前的行号 __FILE__:文件的完成路径和文件名 __DIR__:文件所在的目录,等价于dirname(__FILE__) __FUNCTION__:函数名称 __CLASS__:类的名称 __METHOD__:类的方法名 __NAMESPACE__:当前命名空间的名称 <?php namespace Demo; header ("content-type:text/html;charset=utf-8"); echo '当前的行号是:'. __LINE__ .'<br>'; // 当前的行号是:4 echo '当前文件所在的目录是:'._

Linux—解压缩命令总结(tar/zip)

纵然是瞬间 提交于 2020-03-19 13:26:25
1 tar 1.2 tar介绍   tar命令是linux系统中对文件和目录解压缩命令。tar命令可以用于对后缀名为 .tar , tar.gz 等常用文件。 1.3 tar参数 系统中通过 tar --help 查看: Main operation mode: -A, --catenate, --concatenate append tar files to an archive -c, --create create a new archive -d, --diff, --compare find differences between archive and file system --delete delete from the archive (not on mag tapes!) -r, --append append files to the end of an archive -t, --list list the contents of an archive --test-label test the archive volume label and exit -u, --update only append files newer than copy in archive -x, --extract, --get extract files from an

嵌入式系统作业5

我的梦境 提交于 2020-03-19 05:16:40
一、 练习tar命令打包和解包、练习gzip和bzip2 先用tar命令将对应目录下的文件分别打包成.tar.gz和.tar.bz2格式再分别用相对应的tar命令解包和解压缩 分别使用gzip与bzip2命令对对应文件进行压缩,然后再分别用gunzip和bunzip2解压缩对应的压缩包。 二、 比较两个任意文件,解释补丁文件的含义 创建两个文件a.txt和b.txt两文件至少要有一行内容不一样,再用cat命令查看两文件内容。2表示第2行,d表示删除,1表示第1行(这个数字实际上是发生变动的行号原本格式是区间[i,j],由于后面没有行了所以省略了逗号后面的内容),意思就是新文件相对于旧文件删除了内容,<hello111右边文件相对于左边文件的补丁内容(a增加d删除c更新) 使用diff -urN a.txt b.txt>s.patch生成补丁文件,-表示旧文件(左边文件),+表示新文件(右边文件),@@中表示差异块@@-i,j +i,j@@i表示该补丁块的起始行j表示对于新旧文件各自有改动的行,“-1,2”表示在旧文件的第一行开始数的第二行; +1则表示新文件的第一行作为起始行(本文件第一行后面没有内容了,因此只显示一个起始行,如果是1,6即表示第2到6行发生改变ps:不代表其中所有行都发生改变,此时第一行作为起始行)。其下面内容的含义是旧文件相对于新文件的增删情况

模块与包

☆樱花仙子☆ 提交于 2020-03-19 01:25:40
模块   一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀。   其实import加载的模块分为四个通用类别:    1 使用python编写的代码(.py文件)   2 已被编译为共享库或DLL的C或C++扩展   3 包好一组模块的包   4 使用C编写并链接到python解释器的内置模块   引入导入模块的概念   退出python解释器然后重新进入,那么你之前定义的函数或者变量都将丢失,因此我们通常将程序写到文件中以便永久保存下来,需要时就通过python test.py方式去执行,此时test.py被称为脚本script。   随着程序的发展,功能越来越多,为了方便管理,我们通常将程序分成一个个的文件,这样做程序的结构更清晰,方便管理。这时我们不仅仅可以把这些文件当做脚本去执行,还可以把他们当做模块来导入到其他的模块中,实现了功能的重复利用。   导入模块   import   现在有一个spam.py的文件。 #spam.py print('from the spam.py') money=1000 def read1(): print('spam->read1->money',money) def read2(): print('spam->read2 calling read') read1() def change():

Linux ftp 命令

时光怂恿深爱的人放手 提交于 2020-03-19 00:16:55
转自: https://www.cnblogs.com/mingforyou/p/4103022.html 一、 ftp 的 get 命令 和mget 命令 有何不同? get 一次只下载一个文件;mget一次可以下载多个文件,而且支持通配符,需要注意的是在mget的时侯,需要对每一个文件都选择y/n,如果想不交互的下载全部的文件,可以先用prompt 命令 关掉交互方式(关闭:prompt off;打开:prompt on)。 二、 FTP 使用什么 命令 来定位服务器与本地硬盘的路径? ftp 中用lcd切换本地路径,用cd切换远程服务器的路径。常用到的 命令 如下: cd目录名(进入服务器目录) lcd目录名(进入本机目录) cd \(退到服务器根目录) lcd \(退到本机根目录) cd ..(退回到上一级目录) lcd ..(退回到上一级目录) 三、! 命令 有何作用? 执行本地shell 命令 ,如:!dir(显示本机当亲目录内容),如果不加!如:dir(显示服务器当前目录内容) 四、 ftp 命令 支持“含有空格”的文件夹/文件名吗? 支持,只要在引用时加上双引号“”即可! 五、下面是 命令 行方式使用 FTP 的实战练习 假设有一 ftp 服务器: ftp .test.com ,用户名:username,密码:user1234。在本地电脑D:盘创建一个文件夹

SqlServer索引的原理与应用

荒凉一梦 提交于 2020-03-18 20:06:31
索引的概念 索引的用途:我们对数据查询及处理速度已成为衡量应用系统成败的标准,而采用索引来加快数据处理速度通常是最普遍采用的优化方法。 索引是什么:数据库中的索引类似于一本书的目录,在一本书中使用目录可以快速找到你想要的信息,而不需要读完全书。在数据库中,数据库程序使用索 引可以重啊到表中的数据,而不必扫描整个表。书中的目录是一个字词以及各字词所在的页码列表,数据库中的索引是表中的值以及各值存储位置的列表。 索引的利弊:查询执行的大部分开销是I/O,使用索引提高性能的一个主要目标是避免全表扫描,因为全表扫描需要从磁盘上读取表的每一个数据页,如果有 索引指向数据值,则查询只需要读少数次的磁盘就行啦。所以合理的使用索引能加速数据的查询。但是索引并不总是提高系统的性能,带索引的表需要在数 据库中占用更多的存储空间,同样用来增删数据的命令运行时间以及维护索引所需的处理时间会更长。所以我们要合理使用索引,及时更新去除次优索引。 数据表的基本结构 一个新表被创建之时,系统将在磁盘中分配一段以8K为单位的连续空间,当字段的值从内存写入磁盘时,就在这一既定空间随机保存,当一个 8K用完的时候,数据库指针会自动分配一个8K的空间。这里,每个8K空间被称为一个数据页(Page),又名页面或数据页面,并分配从0-7的页号, 每个文件的第0页记录引导信息,叫文件头(File header);每8个数据页

SqlServer索引的原理与应用

孤人 提交于 2020-03-18 20:05:35
索引的概念 索引的用途:我们对数据查询及处理速度已成为衡量应用系统成败的标准,而采用索引来加快数据处理速度通常是最普遍采用的优化方法。 索引是什么:数据库中的索引类似于一本书的目录,在一本书中使用目录可以快速找到你想要的信息,而不需要读完全书。在数据库中,数据库程序使用索 引可以重啊到表中的数据,而不必扫描整个表。书中的目录是一个字词以及各字词所在的页码列表,数据库中的索引是表中的值以及各值存储位置的列表。 索引的利弊:查询执行的大部分开销是I/O,使用索引提高性能的一个主要目标是避免全表扫描,因为全表扫描需要从磁盘上读取表的每一个数据页,如果有 索引指向数据值,则查询只需要读少数次的磁盘就行啦。所以合理的使用索引能加速数据的查询。但是索引并不总是提高系统的性能,带索引的表需要在数 据库中占用更多的存储空间,同样用来增删数据的命令运行时间以及维护索引所需的处理时间会更长。所以我们要合理使用索引,及时更新去除次优索引。 数据表的基本结构 一个新表被创建之时,系统将在磁盘中分配一段以8K为单位的连续空间,当字段的值从内存写入磁盘时,就在这一既定空间随机保存,当一个 8K用完的时候,数据库指针会自动分配一个8K的空间。这里,每个8K空间被称为一个数据页(Page),又名页面或数据页面,并分配从0-7的页号, 每个文件的第0页记录引导信息,叫文件头(File header);每8个数据页

ftp工作原理 及部署

匆匆过客 提交于 2020-03-18 18:49:43
控制连接 21端口 用于发送ftp命令 数据连接 20端口 用于上传下载数据 数据连接的建立类型:   1主动模式: 服务器主动发起的数据连接 首先由客户端的21 端口建立ftp控制连接 当需要传输数据时 客户端以port命令告知服务器 我打开了某端口 你过来链接我 预算服务器从20端口向该客户端该端口发送请求并建立数据连接   2被动连接模式:服务器等待数据连接 如果客户端所在的网络的防火墙禁止主动模式连接 通常会使用被动模式 首先由客户端的额21端口建立ftp控制连接 当需要传输数据时 服务器以pasv命令告知客户端 我打开了某端口 你过来连接我 于是客户端向服务端的该端口(非20) 发送请求并建立数据连接 传输模式   在传输文件时 根据是否进行字符转换 分为文本和二进制模式   1文本模式 又称ASCLL 美国信息交换标准码模式 这种模式一般只适用于传输纯文本的文件   2二进制模式 又称Binary模式 这种模式不会转换文件中的字符序列 更适合传输程序 图片等非文本字符的文件   使用二进制模式比文本模式更有效率所以大多数的ftp客户端工具 可以根据文件类型自动选择我文件传输模式   ftp用户类型   1匿名用户:用户名为ftp 提供任意的密码(包括空密码)都可以通过服务器的验证 一般用于公共文件的下载   2本地用户:直接是哟个本地的系统账号进行验证登陆  

git教案-v2.0

被刻印的时光 ゝ 提交于 2020-03-18 18:19:11
1 Git历史 同生活中的许多伟大事件一样,Git 诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众广的参与者。绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。到 2002 年,整个项目组开始启用分布式版本控制系统 BitKeeper 来管理和维护代码。 到 2005 年的时候,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束,他们收回了免费使用 BitKeeper 的权力。这就迫使 Linux 开源社区(特别是 Linux的缔造者 Linus Torvalds )不得不吸取教训,只有开发一套属于自己的版本控制系统才不至于重蹈覆辙。他们对新的系统订了若干目标: • 速度 • 简单的设计 • 对非线性开发模式的强力支持(允许上千个并行开发的分支) • 完全分布式 • 有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量) 2 Git与svn对比 2.1 Svn SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就郁闷了。