先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
01 中文编码
很多同学在打开数据时会遇上乱码问题,其原因是字符集的编码问题。Linux和Mac默认的编码集是UTF8,而Windows则是ASCII。如果数据编码的字符集,和你使用Python进行处理时所用的字符集不同,则会出现乱码问题。
另外,我个人的习惯是在Python代码的头部加入以下内容,其中第二行声明了使用UTF8字符集。
#!/usr/bin/env python# coding:utf8
02 变量
Python中的变量可以看作是一个个容器,里面存放着我们需要使用到的值。
Python对变量名的要求和其他语言一样:可以包括英文、数字以及下划线,但不能以数字开头,区分大小写。 当然我推荐,变量名用纯英文就很好,并且取一些有意义的名称,便于自己理解每个变量的作用。
Python是一门弱类型的语言,在使用变量时无需声明其类型。Python中的变量包括以下几类:数值、字符串、列表、元组、字典。
03 数值
数值包括整型和浮点型,分别对应整数和浮点数,后者精度更高。
# 整型a = 1# 浮点型b = 2.1print a, b
04 字符串
字符串也就是我们经常接触到的文本,可以往里面放任意长度的内容,用单引号或双引号括起来。应当注意,中文以及中文符号只能出现在字符串內,如果在下面第三行中使用了中文输入法的逗号 ,Python将报错。
c = Hello d = 你好 print c, d
使用 + 可以拼接两个字符串。
print c + d
使用 len() 可以得到字符串的长度。
print len( Hello World )
使用切片可以访问字符串中的某个字符或某个片段。
# 位置下标从0开始c = Hello World # 打印结果为H,下标为0表示第一个字符print c[0]
# 打印结果为d,下标为负数表示从后往前数# 所以-1表示倒数第一个字符print c[-1]
# 使用:返回一个片段,冒号前后分别为开始下标和结束下标# 包括开始下标,但不包括结束下标
# 因此c[1:5]表示,返回下标从1到4的片段,即第二个到第五个字符print c[1:5]
# 冒号前后的下标同样可以使用负数
# 或者不提供,表示从最左端开始或一直到最右端print c[1:-1], c[:5], c[3:]
05 列表
列表好比一条队伍,里面依次存放着多个变量。列表和字符串类似,但字符串中的每个元素都是字符,而列表中的每个元素可以是任意类型的变量。
# 使用[]定义一个空列表,使用append()向列表尾部添加一个元素
# 如果要添加到首部,就用prepend()好了a = []a.append(1)a.append(2.1)a.append( Hello )print a
使用 len() 可以获得列表的长度。
print len(a)
列表元素的按下标访问和赋值等操作,和字符串都是类似的。
print a[1], a[-1]a[1] = 100print a
使用 del 删除列表中的某个元素。
del a[0]print a
06 元组
元组和列表类似,唯一的不同是元组中的元素在初始化之后不能再更改,因此可以理解成一个只读的变量。
# 使用()定义一个元组a = (1, 2.1, Hello )# 尝试修改元组中的元素会报错a[0] = 100
07 字典
字典是一种极为重要的变量类型,使用一个key来访问相应的value,即一种键值对的数据形式。
# 使用{}定义一个字典a = {}# 使用key来赋值valuea[ k1 ] = 1a[ k2 ] = 2.1a[ k3 ] = Hello
所以能够总结出字典和列表的不同。列表中的元素是有序对等的,所以是用下标来赋值和访问,而字典中的元素是无序的,所以是用key来操作相应value。
# 使用{}定义一个字典a = {}# 使用key来赋值valuea[ k1 ] = 1a[ k2 ] = 2.1a[ k3 ] = Hello
使用 has_key() 判断字典中是否有某个key。
print di.has_key( k4 )
如果访问不存在的key,Python将会报错。在赋值的时候,如果key已经存在,则会用新的value覆盖已有的value。
08 注释
被注释的代码将不会运行,可以看作是写给自己和其他程序猿阅读的一些笔记和说明,提高代码可读性。
# 这里是单行注释 这里是很多行注释
在Sublime中,选中需要注释的内容,按Ctrl+/即可完成注释。
09 保留字符
在Python中,有一些字符串具有某些特定功能,如 import 、 class 等。我们在选择变量名时,应注意避开这些保留字符。
# 以下变量赋值将报错import = 1
10 行和缩进
在Python中,代码块的边界不是通过大括号等符号进行显式划分,而是通过行的缩进实现的。连续相同缩进水平的代码处于同一个代码块,在使用 for、while、if 、try等语法时需要注意每行代码的缩进。
11 运算符
运算符的作用是根据已有的变量生成新的变量,主要有以下几种:
- 算术运算符:+,-,*,/,%,即加、减、乘、除、取余
- 比较运算符:==,!=,>,<,>=,<=,即等于、不等于、大于、小于、大于等于、小于等于
- 赋值运算符:=,+=,-=,*=,/=,%=,即赋值、加赋值、减赋值、乘赋值、除赋值、取余赋值
- 逻辑运算符:and,or,not,即与、或、非
a = 1b = 2print a + bprint a == b# 等价于 a = a + 3a += 3print ac = Trued = Falseprint c and d
12 条件
在写代码的时候,往往需要根据某些条件进行判断,并根据判断结果执行不同的分支代码。
a = 1# 单个条件if a == 1: print 11111# 处理条件不成立的分支if
a == 2: print 22222else: print 33333# 多个条件,加多少个都可以if
a == 1: print 11111elif a == 2: print 22222else: print 33333
给大家的福利
零基础入门
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
同时每个成长路线对应的板块都有配套的视频提供:
因篇幅有限,仅展示部分资料
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
9291cfcf1695d8cd42.png#pic_center)
因篇幅有限,仅展示部分资料
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!