Python入门教程的方法简介


在计算机语言中Python入门教程中被广泛的应用,以下的文章就是介绍如何使用Python入门教程,如果我们需要这一实际应用技巧,就浏览以下的文章简,希望本文章的相关介绍会对你有所收获。

的是单测试局域网中的电脑是否连通.这些电脑的ip范围从192.168.0.101到192.168.0.200.
思路:用shell编程.(Linux通常是bash而Windows是批处理脚本).

例如,在Windows上用ping ip 的命令依次测试各个机器并得到控制台输出.由于ping通的时候控制台文本通常是"Reply from ... " 而不通的时候文本是"time out ... " ,所以,在结果中进行字符串查找,即可知道该机器是否连通.
实现:Java代码如下:

  1. String cmd="cmd.exe ping ";  
  2. String ipprefix="192.168.10.";  
  3. int begin=101;  
  4. int end=200;  
  5. Process p=null;  
  6. for(int i=begin;i<end;i++){  
  7. pRuntime.getRuntime().exec(cmd+i);  
  8. String line = null;  
  9. BufferedReader reader = new BufferedReader(new
     InputStreamReader(p.getInputStream()));  
  10. while((line = reader.readLine()) != null)  
  11. {  
  12. //Handling line , may logs it.   
  13. }  
  14. reader.close();  
  15. p.destroy();  
  16. }  
  1. import subprocess  
  2. cmd="cmd.exe" 
  3. begin=101 
  4. end=200 
  5. while begin<end: 
  6. p=subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE,  
  7. stdin=subprocess.PIPE,  
  8. stderr=subprocess.PIPE)  
  9. p.stdin.write("ping 192.168.1."+str(begin)+"\n")  
  10. p.stdin.close()  
  11. p.wait()  
  12. print "execution result: %s"%p.stdout.read()  
  13.  

这段代码运行得很好,问题是为了运行这段代码,你还需要做一些额外的工作.这些额外的工作包括:编写一个类文件 编写一个main方法 将之编译成字节代码
由于字节代码不能直接运行,你需要再写个小小的bat或者bash脚本来运行.

当然,用C/C++同样能完成这项工作.但C/C++不是跨平台语言.在这个足够简单的例子中也许看不出C/C++和Java实现的区别,但在一些更为复杂的场景,比如要将连通与否的信息记录到网络数据库.由于Linux和Windows的网络接口实现方式不同,你不得不写两个函数的版本.用Java就没有这样的顾虑.
同样的工作用Python实现如下:

对比Java,Python的实现更为简洁,你编写的时间更快.你不需要写main函数,并且这个程序保存之后可以直接运行.另外,和Java一样,Python也是跨平台的.

有经验的C/Java程序员可能会争论说用C/Java写会比Python写得快.这个观点见仁见智.我的想法是当你同时掌握Java和Python之后,你会发现用Python写这类程序的速度会比Java快上许多.例如操作本地文件时你仅需要一行代码而不需要Java的许多流包装类.各种语言有其天然的适合的应用范围.用Python处理一些简短程序类似与操作系统的交互编程工作最省时省力.

评论关闭