菜鸟Python学习笔记第二天:关于Python黑客。

2016年1月5日    星期四    天气:还好

一直不知道自己为什么要去学Python,其实Python能做到的Java都可以做到,Python有的有点Java也有,而且Java还是必修课,可是就是不愿意去学Java,后来看到了《Linux黑客的python编程之道》然后发现了一些自己感兴趣的事,每个IT男都有一个黑客梦,我也不例外,所以继续开始Python写习。

因为要准备高数考试,所有以很多东西不能去仔细学习。

就深深的记住了几句话:

第一句:调试器就是黑客的眼睛。刚开始不懂什么是调试器:但是从眼睛不难看出他的作用,眼睛是用来观察世界的,而黑客就是去观察代码。也就是说黑客可以通过调试器去观察程序的运行,有了自己的想法以后再去百度了他的概念。

原谅我是小白,太多高深的东西看不懂,自己理解一下就是用来调试程序的。学习过C的小伙伴也许都知道VC自带的调试程序,会对程序一条一条的读,然后遇到错误时就会停下,这让我想起来Python中的pass命令。当你程序出错却不知道怎么改又想知道后面的程序对不对时就可以添加一个pass,就可以跳过,然后运行后面的程序了。

第二句: 动态分析的能力决定你的技术水平。

   这绝对是一句经典的话,如果你只能对一个程序做到简单的数据分析,好LOW,如果你有着足够强大的分析能力,你会发现其实所有的问题都不难的。保持自己大脑的强大活力会让自己的技术越来越强。在学习c语言的时候就发现分析那些蓝桥杯题目的时候就会越到好多问题,特别是动态分析类的题目,完全是两眼模糊,什么都不懂。第一次觉得自己的分析能力很差。黑客不仅仅是依靠计算机的,我想在生活中他们的大脑分析问题绝对是强大的。

可能上面的话真的和黑客没什么关系,所以接下来看一段代码吧:

import subprocess

cmd="cmd.exe"
begin=101
end=200
while begin<end:

p=subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE,
stdin=subprocess.PIPE,
stderr=subprocess.PIPE)
p.stdin.write("ping 192.168.1."+str(begin)+"\n")

p.stdin.close()
p.wait()

print "execution result: %s"%p.stdout.read()

有一种东西叫做DOS命令,有一种命令叫做ping,作为一个小白,最起码的DOS命令是要懂得,这个程序就是在一直ping,查出来局域网下的用户ip.

不需要懂那么多,看看就好。后面自会学到。

作为一个小白,我觉得必要的基础学习是必须的,如果什么都想着一步登天,劝一句别学了,不适合IT。

                                        ------------小白的学习日记,共勉。路途遥远,自己加油。

时间: 2024-10-07 20:58:54

菜鸟Python学习笔记第二天:关于Python黑客。的相关文章

python学习笔记(9)-python编程风格

本节点标题1.python编程风格1.1.python设计哲学1.2.在Python解释器内运行import this可以获得完整的编程风格列表 =======================================================================================================================1.python编程风格 1.1.python设计哲学Python的设计哲学是"优雅"."明确&

Python学习笔记(一)-Python介绍和应用

Python的设计哲学是"优雅"."明确"."简单",Python开发者的哲学是"用一种方法,最好是只有一种方法来做一件事",致力于开发效率的最优化:简洁的语法.内置工具包.无需编译.由于这种设计观念的差异,Python源代码通常被认为比Perl具备更好的可读性,并且能够支撑大规模的软件开发.这些准则被称为"Python格言".在Python解释器内运行import this可以获得完整的列表Python是

Python 学习笔记(十)Python集合(一)

回顾 int/float/str/list/tuple/dict 整数型和浮点型是不可变的,不是序列 字符串是不可变的,是序列 列表是可变的,是序列 元组是不可变的,是序列 字典是可变得,但不是序列 集合的基本概念 集合是基本的数学概念,它是集合论的研究对象,指具有某种特定性质的事物的总体,(在最原始的集合论─朴素集合论─中的定义,集合就是"一堆东西".)集合里的事物("东西"),叫作元素.若然 x 是集合 A 的元素,记作 x ∈ A. 创建集合的方法 方法1:使

Python学习笔记第二十六周(Django补充)

一.基于jQuery的ajax实现(最底层方法:$.jax()) $.ajax( url: type:''POST" ) $.get(url,[data],[callback],[type])  #callback是发送成功后就执行的函数,type是告诉服务器需要什么数据,type:text|html|json|script $.post(url,[data],[callback],[type]) 例子: $.get('/jquery_get/',{name:'gavin'}) //name关键

Python学习笔记第二十四五周(Django补充)

目录: 内容: 1.render_to_reponse() 不同于render,render_to_response()不用包含request,直接写template中文件 2.locals() 如果views文件中的函数里变量过多的话,可以在render或render_to_response()里面直接增加render(request,'index.html',locals())这样在前端界面渲染的时候可以直接写变量名

Python学习笔记第二十周

目录: 一.ORM 1.查询补充 内容: 一.ORM 1.查询补充: 1.models.USR.objects.all().values('id','name') 这个语句相当于SQL语句中的select id,name from USER  ,表示可以单独取某几列的值,取得的值仍然是QuerySet,但是内部元素变为字典 2.models.USR.objects.all().value_list('id','name') 表示可以单独取某几列的值,取得的值仍然是QuerySet,但是内部元素变

Python学习笔记第二十七周(Bootstrap)

目录: 一.栅格系统 二.表单 三.按钮 内容: 前言: 首先通过https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css 链接下载bootstrap.min.css保存到本地,然后执行下面操作 一.栅格系统 栅格系统是页面布局使用,是区分列布局使用的,一般bootstrap将整个页面分为12份,可以任意组合自己想要的列分割方式,在div标签中使用col-XX的方式来实现,该方式有几种方法: col-md-XX   其中md表示中

Python学习笔记第二十二周(前端知识点补充)

目录: 一.伪类 二.样式 1.字体 2.背景图片 3.margin和padding 内容: 一.伪类 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> a:link{ background-color:red; } a:hover{ backgrou

Python学习笔记第二十四周(JavaScript补充)

目录: 内容: 类型函数: 1.typeof 只能判断基本数据类型,对于引用数据类型,只能判断它为object var s=8; console.log(typeof(s)); var s2=new String('hello2'); console.log(typeof(s2)); //没法判断它的具体类型 2.instanceof var s3= new String('hello') console.log(s3 instanceof(String));//判断s3是否为String实例化