首页 开发编程 正文

苹果x怎么隐藏php

编程语言PythonPython是一种面向对象有着代码简洁、可读性强特点的解释型计算机程序设计语言。将C语言中麻烦的指针和内存管理对开发者隐藏起来,C语言C语言是一门面向过程的、抽象化的广泛应用于底层开发的通用程序设计语言。...

苹果x怎么隐藏php,如何学编程?

编程是编定程序的中文简称,就是让计算机代码解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程。编程能提高逻辑思维能力,加强计算能力。

编程语言

Python

Python是一种面向对象有着代码简洁、可读性强特点的解释型计算机程序设计语言。代码简洁是因为它把许多的复杂的操作封装起来,将C语言中麻烦的指针和内存管理对开发者隐藏起来,使得在开发过程中,无须在意这部分的细节。另外Python这门语言强制用户用缩进进行排版,若不好好排版,则代码编译无法通过,或者运行过程会出现错误。

C语言

C语言是一门面向过程的、抽象化的广泛应用于底层开发的通用程序设计语言,能以简易的方式编译和处理低级存储器。C语言既具有高级语言的特点,又具有汇编语言的特点,是仅产生少量机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。

是有简洁的语言、具有结构化的控制语句、丰富的数据类型、丰富的运算符、可对物理地址进行直接操作、代码具有较好的可移植性、可生成高质量、目标代码执行效率高的程序。

Java

Java通过面向作为静态对象的编程语言的代表,可以充分的实现面向的对象理论的编程语言,有简单性、功能强大、分布式、健壮性、安全性、平台独立与可移植性、多线程及动态性的特点。

Java支持在网络上应用,Java既支持各种层次的网络连接,又以Socket类支持可靠的流(stream)网络连接,它是分布式语言。所以用户可以产生分布式的客户机和服务器。网络变成软件应用的分布运载工具。Java程序只要编写一次,就可到处运行。

PHP

PHP是一种被广泛应用的开放源代码的多用途脚本语言,它可嵌入到 HTML中,尤其适合 web 开发。

使用 PHP 的最大的好处是它对于初学者来说极其简单,同时也给专业的程序员提供了各种高级的特性,只需几个小时就可以自己写一些简单的脚本。尽管 PHP 的开发是以服务端脚本为目的,但事实上其功能远不局限于此。

GO

Go语言(又称 Golang)是一种静态强类型、编译型语言,是一个开源编程环境,可以轻松构建简单、可靠和高效的软件。Go 语言语法与 C 相近,但功能上有:内存安全,GC(垃圾回收),结构形态及 CSP-style 并发计算。Go 内嵌了关联数组(也称为哈希表(Hashes)或字典(Dictionaries)),就像字符串类型一样。

对比

python和c语言的区别主要体现在:语言类型、内存管理、速度、应用、运行、对象、声明、测试和调试难度、复杂度、学习程度。 测试和调试难度不同:Python相对其他语言而言是非常简单的语言,高度集成,代码量少。Python中的测试和调试更容易;C中测试和调试更难。 学习难度不同:Python:Python程序更易于学习,编写和阅读;C语言:C程序语法比Python更难。

python 跟 java 一样是强类型语言,也就是说它不会根据环境变化自动改变数据类型。python 是动态语言,而 java 是静态语言。也就是说 python 在编程时,永远不用给任何变量指定数据类型,而 java 写程序时必须声明所有变量的数据类型。

python 的模块类似于 java 的 class,不过python模块导入会执行 代码的内容,而 java 不会。python 与 java 的执行方式还是蛮像的,都是将源码编译成 byte code 然后交给相应的虚拟机去执行。

Python的框架数量较少,而PHP中成熟的框架比较多;PHP是面向web的语言,而Python是多用途语言,也可以用于web开发;Python使用非常严格的缩进强制执行,使它比PHP更具可读性。

学习思路

认识编程

编程语言(programming language)又称程序设计语言,是一组用特定语言编写的用于执行特定任务的指令。主要用于开发桌面应用、操作系统、网站、移动应用等。

低级编程语言

它基于二进制数 0 和 1 工作,处理器直接运行低级程序,不需要编译器或解释器,因此用低级语言编写的程序可以运行得非常快。

低级语言进一步分为两部分

机器语言

机器语言也称为机器代码或目标代码,更容易阅读,因为它通常以二进制或十六进制形式(基数 16)形式显示。

它不需要翻译器来转换程序,因为计算机直接理解机器语言程序。

汇编语言

汇编语言是为特定处理器设计的,它以象征性和人类可理解的形式表示一组指令。它使用汇编程序将汇编语言转换为机器语言。

中级编程语言

中级编程语言介于低级编程语言和高级编程语言之间。

它也被称为中间程序语言和伪语言。

中级编程语言的优点是支持高级编程的特性,是一种用户友好的语言,与机器语言和人类语言密切相关。

例如:C、C++

高级编程语言

高级编程语言 (HLL) 旨在开发用户友好的软件程序和网站。

这种编程语言需要编译器或解释器将程序翻译成机器语言(执行程序)。

示例:Python、Java、JavaScript、PHP、C#、C++ 等。

编程实践

学习编程语言的过程简单描述为:过、抄、仿、改、调、看、练、创、悟。

基础知识点不求深解,语言什么样的,适用场合、基本语法格式

抄代码

从书上抄、例子中抄、边抄边想边想边回忆语法

模仿改

仿照给出的代码写出自己的代码

勤调试

不断调试验证自己想法,继续思考,再次验证。熟悉调试工具调试方法

看n遍

出错或者遇到问题时,将代码从头到尾看n遍直到快记住,找出问题原因

2-5步三遍以上

创新

拿出一个没有写过的根据要求,一步一步写出来,写不出来参考6

主动找到写代码的感觉和成就感,保持下去。

选择大于努力,只有切入一个适合自己的开发方向,才能持续进步。关于开发方向,我有以下两个选择标准。

兴趣

学习编程是一个非常枯燥的过程,内容多,时间长,成本高,即使报名了培训班也学不会,所以,我们首先要选择自己感兴趣的一个开发方向,这样不但能快速学习,以后还能持续进步。学习编程的过程是比较艰苦的,没有兴趣很难硬抗下来,此处的兴趣,是指别人无法撼动的热爱,是工作之余让你放松的事情。如果你只是有过某种想法,别人告诉你这个想法不靠谱,你就放弃了,这顶多是一时的鸡血。

学习方式

费曼学习法

在学完一个东西之后去给别人讲明白,注意是讲给别人听,当你写成文章发表在网上的时候,你自然会去用更通俗的语言,更清晰的逻辑去讲述这个事物背后的逻辑。这个过程是对自己学习的一个检验,也是加深映像整理思路的重要过程。

那么如果你是去记笔记的话,很有可能你会倾向于去照抄,或是不完全照抄,以“提纲”或是“知识点”的形式抄在本子上。说句实话,照抄的笔记真的没用,因为现在搜索引擎的能力已经可以让你把大多数东西快速找到,你为什么还要照抄到笔记本上呢?

从功利的角度考虑,技术文章的写作,别人可以直接访问,也可以逐渐累积你的影响力,一个好的个人技术博客,会给你的简历加分很多,而一个厚厚的笔记本,没有人会管你记了什么。

做好笔记

大多数人没有过目不忘的神技,学了也不一定马上掌握,需要过后花时间慢慢领悟,而且还有忘掉的风险,所以对于重要的知识点都要做好笔记。编程的过程中总会遇到各种各样的问题,比如编程环境的配置,常用的快捷键,编程过程中的错误、异常,软件更新问题等等。面对这些问题都是如何解决的,一定要记录下来,一是增加自己解决问题的经验,而是以防下次出现。

多看官方文档

外文资料互联网是一个更新迭代很快的行业,所有编程语言都会不断的更新新功能和修复旧Bug,网上查的资料很有可能是旧的解决方案,现在已经不适用了。所以最好最快的方法就是查看官方文档。

进入行业圈子

只有进入行业圈子与其他人交流,你才了解最新的行业动态,才知道自己需要更新哪些技能。

动手做项目

学习编程的最终目的就是用所学的做出具有一定功能的项目,而做项目又是最好的学习和巩固知识的方式。如果前期能力不足就先做一些简单的功能模块,一步一步慢慢来,不要一开始就要实现各种酷炫炸天功能,遇到不会的就在网上查, 现在互联网这么发达,获取资源也及其方便。而且开发前也最好在网上查一下有没有已经成型的框架或模板,什么都自己做一是很耗费时间,二是自己技术能力不足还可能留下不少坑。

学习Python

安装编程环境

第一步:访问Python官网,获取最新安装程序。

第二步:运行下载的安装程序,注意勾选“Add Python3.7 to PATH”,然后选择个性化安装,即“Customize installation”。

第三步:确保“pip”被勾选上,之后安装各种库需要用到pip。

第四步:高级选项,需要的可以修改安装目录,通常没有需要修改的,直接点“Install”。

第五步:等待程序自动安装完成。

第六步:出现如下界面,说明安装已完成。

第七步:验证方法,Windows+R 键打开“运行”窗口,输入cmd运行,进入命令提示窗口,再输入python,进入Python的命令模式,输入 print("Hello"),结果输出了 Hello,如下图所示,确定开发环境已安装完成。

运行环境

Hello World!

命令行

在Linux命令行输入:$python

将直接进入python。然后在命令行提示符>>>后面输入:>>>print('Hello World!')

可以看到,随后在屏幕上输出:

Hello World!

print是一个常用函数,其功能就是输出括号中得字符串。

(在Python 2.x中,print还可以是一个关键字,可写成print 'Hello World!',但这在3.x中行不通 )

小程序

另一个使用Python的方法,是写一个Python程序。用文本编辑器写一个.py结尾的文件,比如说hello.py

在hello.py中写入如下,并保存:print('Hello World!')

退出文本编辑器,然后在命令行输入:$python hello.py

来运行hello.py。可以看到Python随后输出Hello World!

脚本

我们还可以把Python程序hello.py改成一个可执行的脚本,直接执行:#!/usr/bin/env python

print('Hello World!')

需要修改上面程序的权限为可执行:chmod 755 hello.py

然后再命令行中,输入./hello.py

就可以直接运行了。

基本数据类型

变量不声明

Python的变量不需要声明,你可以直接输入:>>>a = 10

那么你的内存里就有了一个变量a, 它的值是10,它的类型是integer (整数)。 在此之前你不需要做什么特别的声明,而数据类型是Python自动决定的。

>>>print(a)

>>>print(type(a))

那么会有如下输出:

10

这里,我们学到一个内置函数type(),用以查询变量的类型。

回收变量名

如果你想让a存储不同的数据,你不需要删除原有变量就可以直接赋值。

>>>a = 1.3

>>>print(a,type(a))

会有如下输出

1.3

序列

sequence(序列)是一组有顺序的元素的集合,(严格的说,是对象的集合,但鉴于我们还没有引入“对象”概念,暂时说元素)序列可以包含一个或多个元素,也可以没有任何元素。

我们之前所说的基本数据类型,都可以作为序列的元素。元素还可以是另一个序列,以及我们以后要介绍的其他对象。

序列有两种:tuple(定值表; 也有翻译为元组) 和 list (表)

>>>s1 = (2, 1.3, 'love', 5.6, 9, 12, False) # s1是一个tuple

>>>s2 = [True, 5, 'smile'] # s2是一个list

>>>print(s1,type(s1))

>>>print(s2,type(s2))

tuple和list的主要区别在于,一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更。

一个序列作为另一个序列的元素

>>>s3 = [1,[3,4,5]]

空序列

>>>s4 = []

自学

网站

菜鸟网站

这个python教程很适合小白学习,没有高深的原理,照着教程学就完事了。

菜鸟教程是一个提供免费编程学习的网站,里面不但能学到编程知识,还能运用在线编程工具,使你在学习的过程中得到发挥,实践得真理,边学边做中让基础打得更稳,让自己的知识更加稳固。在自己有不明白不理解的地方可以在网站的用户笔记中寻找大佬们的笔记,把自己所学和技术大佬的经验所融合,使自己更好地提升自己的能力。

菜鸟教程内容丰富,例如前端热门语言HTML5、CSS3、JavaScript、Vue等它该有的都有,都会从最基础的开始教,让刚学编程的小白由浅及深,一看就懂。每个知识点都有实例可以动手,直接在页面内做你想要的效果真的非常棒。菜鸟的排版简洁清晰有序,内容一针见血,让你一看就能明白其知识点的含义。

菜鸟教程不仅前端教程语言丰富,后端的Java、PHP、Python更是一应俱全,当然数据库、移动端、XML、ASP.NET、Web Service、开发工具和网站建设也是应有尽有,菜鸟教程有学到的知识如此之多,奋斗吧少年。

廖雪峰的官方网站

廖雪峰的官方网站比较推荐新手程序员学习前端,这个网站的教学视频的讲解相对来说会比较生动,没有其他教程那么死板,看起来也不至于那么犯困,也更便于新手去理解。总的来说,廖雪峰的官方网站作为一款启蒙类的前端学习网站还是相当不错的。

Python官方教程

这是Python官方出品的教程,可搭配Python标准库一起学。

书籍

《Python编程从入门到实践(第2版)》

作者:埃里克·马瑟斯 (EricMatthes)袁国忠 译

ISBN:9787115546081

出版:人民邮电出版社

本书是针对所有层次Python读者而作的Python门书。全书分两部分:部分介绍用Python编程所必须了解的基本概念,包括强大的Python库和工具,以及列表、字典、if语句、类、文件与异常、代码测试等内容;第二部分将理论付诸实践,讲解如何发三个项目,包括简单的2D游戏、利用数据生成交互式的信息图以及创建和定制简单的Web应用,并帮助读者解决常见编程问题和困惑。

《像计算机科学家一样学Python》

ISBN:9787115425515

作者:艾伦 B. 唐尼(Allen B. Downey)

出版:人民邮电出版社

本书以培养读者以计算机科学家一样的思维方式来理解Python语言编程。贯穿全书的主体是如何思考、设计、发的方法,而具体的编程语言,只是提供了一个具体场景方便介绍的媒介。全书共21章,详细介绍Python语言编程的方方面面。本书从基本的编程概念始讲起,包括语言的语法和语义,而且每个编程概念都有清晰的定义,引领读者循序渐地学习变量、表达式、语句、函数和数据结构。书中还探讨了如何处理文件和数据库,如何理解对象、方法和面向对象编程,如何使用调试技巧来修正语法错误、运行时错误和语义错误。

《计算机科学丛书:Java编程思想》

ISBN:9787111213826

作者:[美] Bruce Eckel

出版:机械工业出版社

本书的作者拥有多年教学经验,对C、C++以及Java语言都有独到、深入的见解,以通俗易懂及小而直接的示例解释了一个个晦涩抽象的概念。本书共22章,包括操作符、控制执行流程、访问权限控制、复用类、多态、接口、通过异常处理错误、字符串、泛型、数组、容器深入研究、JavaI/O系统、枚举类型、并发以及图形化用户界面等内容。这些丰富的内容,包含了Java语言基础语法以及高级特性,适合各个层次的Java程序员阅读,同时也是高等院校讲授面向对象程序设计语言以及Java语言的好教材和参考书。

《疯狂Java讲义》

ISBN:9787121361586

作者:李刚

出版:电子工业出版社

《疯狂Java讲义(第4版)》深入介绍了Java编程的相关方面,《疯狂Java讲义(第4版)》内容覆盖了Java的基本语法结构、Java的面向对象特征、Java集合框架体系、Java泛型、异常处理、Java GUI编程、JDBC数据库编程、Java注释、Java的IO流体系、Java多线程编程、Java网络通信编程和Java反射机制。覆盖了java.lang、java.util、java.text、java.io和java.nio、java.sql、java.awt、javax.swing包下绝大部分类和接口。本书重点介绍了Java 9的模块化系统,还详细介绍了Java 9的jshell工具、多版本JAR包、匿名内部类的菱形语法、增强的try语句、私有接口方法,以及Java 9新增的各种API功能。

%3Chowto_content%3E[{"type":"paragraph","attrs":{"is_abstract":true},"children":[{"type":"text","text":"编程是编定程序的中文简称,就是让计算机代码解决某个问题,对某个计算体系规定一定的运算方式,使计算体系按照该计算方式运行,并最终得到相应结果的过程","id":""},{"type":"text","text":"。编程能提高逻辑思维能力,加强计算能力。","id":""}],"text":"","id":"WceadiusyoyOwaxoNSsceBGjnVd"},{"type":"heading","attrs":{"level":1},"children":[{"type":"text","text":"编程语言","id":""}],"text":"","id":"Oqa2diWSioCqoexAhV7cd5qbnLd"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"Python","id":""}],"text":"","id":"RYCIdicsYoyiUgx6drTcXYVMn4d"},{"type":"paragraph","children":[{"type":"text","text":"Python是一种面向对象有着代码简洁、可读性强特点的解释型计算机程序设计语言。代码简洁是因为它把许多的复杂的操作封装起来,将C语言中麻烦的指针和内存管理对开发者隐藏起来,使得在开发过程中,无须在意这部分的细节。另外Python这门语言强制用户用缩进进行排版,若不好好排版,则代码编译无法通过,或者运行过程会出现错误。 ","id":""}],"text":"","id":"SeiEdQ4GAoc8Koxm6Oucd3MonOb"},{"type":"image","attrs":{"height":701,"note":[{"type":"text","text":"Python","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/aeaa7b58948c4124bd69b6417e51906a","width":1563},"text":"","id":"DSA6demiCo8YmgxGYDmcdbmenQf"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"C语言","id":""}],"text":"","id":"RKKodkW2Wo0muoxaYdScS9gDnse"},{"type":"paragraph","children":[{"type":"text","text":"C语言是一门面向过程的、抽象化的广泛应用于底层开发的通用程序设计语言,能以简易的方式编译和处理低级存储器。C语言既具有高级语言的特点,又具有汇编语言的特点,是仅产生少量机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。","id":""}],"text":"","id":"WkgAdki6koYcsSxzF93csMeynCk"},{"type":"paragraph","children":[{"type":"text","text":"是有简洁的语言、具有结构化的控制语句、丰富的数据类型、丰富的运算符、可对物理地址进行直接操作、代码具有较好的可移植性、可生成高质量、目标代码执行效率高的程序。","id":""}],"text":"","id":"FkCQdiCsmo40iqxg7ujcPBy9nHe"},{"type":"image","attrs":{"height":806,"note":[{"type":"text","text":"C语言","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/6f859719f77941aea4a29e7119f20a7f","width":1603},"text":"","id":"ME8ad6QuAoiWo2xe8zCc3gXrnog"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"Java","id":""}],"text":"","id":"FWK8d2GSUoMME2xUxHzc8kMYnQR"},{"type":"paragraph","children":[{"type":"text","text":"Java通过面向作为静态对象的编程语言的代表,可以充分的实现面向的对象理论的编程语言,有简单性、功能强大、分布式、健壮性、安全性、平台独立与可移植性、多线程及动态性的特点。 ","id":""}],"text":"","id":"TeIod6souoE4EkxgjEfcOZkLnoc"},{"type":"paragraph","children":[{"type":"text","text":"Java支持在网络上应用,Java既支持各种层次的网络连接,又以Socket类支持可靠的流(stream)网络连接,它是分布式语言。所以用户可以产生分布式的客户机和服务器。网络变成软件应用的分布运载工具。Java程序只要编写一次,就可到处运行。","id":""}],"text":"","id":"Te4udsisCoK44gxMpuPcDy11nfd"},{"type":"image","attrs":{"height":839,"note":[{"type":"text","text":"Java","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/0e1656925be54be393b49dc2e2ac7b80","width":1893},"text":"","id":"SUW6d0aw2oskC4x2FMSc3WhNnRg"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"PHP","id":""}],"text":"","id":"Ic6kdo08aoY4GuxeY6Qc3Z8nnNe"},{"type":"paragraph","children":[{"type":"text","text":"PHP是一种被广泛应用的开放源代码的多用途脚本语言,它可嵌入到 HTML中,尤其适合 web 开发。","id":""}],"text":"","id":"IwQ8dKQCeoGAmixqM7BcXdgUnAd"},{"type":"paragraph","children":[{"type":"text","text":"使用 PHP 的最大的好处是它对于初学者来说极其简单,同时也给专业的程序员提供了各种高级的特性,只需几个小时就可以自己写一些简单的脚本。尽管 PHP 的开发是以服务端脚本为目的,但事实上其功能远不局限于此。","id":""}],"text":"","id":"DW0Odakc6ouW6Kxu6kPcdPF3nZd"},{"type":"image","attrs":{"height":648,"note":[{"type":"text","text":"PHP","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/300a2e3c7e954e7b8def92163c3f3673","width":1828},"text":"","id":"Naq2duscgogQ2oxYjg2cosy1nEe"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"GO","id":""}],"text":"","id":"CwWwdCYeAoMuMuxCiNpcqJKpnRg"},{"type":"paragraph","children":[{"type":"text","text":"Go语言(又称 Golang)是一种静态强类型、编译型语言,是一个开源编程环境,可以轻松构建简单、可靠和高效的软件。Go 语言语法与 C 相近,但功能上有:内存安全,GC(垃圾回收),结构形态及 CSP-style 并发计算。Go 内嵌了关联数组(也称为哈希表(Hashes)或字典(Dictionaries)),就像字符串类型一样。","id":""}],"text":"","id":"SIY6dO8ecoGoOOxmUVPcViIAnxb"},{"type":"image","attrs":{"height":772,"note":[{"type":"text","text":"GO","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/3a879bbdd4b64d2b9b54d3f7358e7ed3","width":1522},"text":"","id":"GuiUdc6UCoKUWGxaCogc2jcrnFe"},{"type":"heading","attrs":{"level":1},"children":[{"type":"text","text":"对比","id":""}],"text":"","id":"EGqmdKMsGogUeexukQ5cA2wTnQf"},{"type":"paragraph","children":[{"type":"text","text":"python和c语言的区别主要体现在:语言类型、内存管理、速度、应用、运行、对象、声明、测试和调试难度、复杂度、学习程度。 测试和调试难度不同:Python相对其他语言而言是非常简单的语言,高度集成,代码量少。Python中的测试和调试更容易;C中测试和调试更难。 学习难度不同:Python:Python程序更易于学习,编写和阅读;C语言:C程序语法比Python更难。","id":""}],"text":"","id":"HEyKduA4Iow6Kwx8ZiCcPQaVnHd"},{"type":"paragraph","children":[{"type":"text","text":"python 跟 java 一样是强类型语言,也就是说它不会根据环境变化自动改变数据类型。python 是动态语言,而 java 是静态语言。也就是说 python 在编程时,永远不用给任何变量指定数据类型,而 java 写程序时必须声明所有变量的数据类型。","id":""}],"text":"","id":"I6yAdOUQqoQSIYxs7XVcPwlSnMe"},{"type":"paragraph","children":[{"type":"text","text":"python 的模块类似于 java 的 class,不过python模块导入会执行 代码的内容,而 java 不会。python 与 java 的执行方式还是蛮像的,都是将源码编译成 byte code 然后交给相应的虚拟机去执行。","id":""}],"text":"","id":"VmgOds4Ceoi0KoxGa8nc0GLDneb"},{"type":"paragraph","children":[{"type":"text","text":"Python的框架数量较少,而PHP中成熟的框架比较多;PHP是面向web的语言,而Python是多用途语言,也可以用于web开发;Python使用非常严格的缩进强制执行,使它比PHP更具可读性。","id":""}],"text":"","id":"MW22d02SsoU2oYxesy1cIEfsnYb"},{"type":"paragraph","children":[{"type":"text","text":"","id":""}],"text":"","id":"SA4kdwiSIoMW42xCGzDcMMyXnfe"},{"type":"heading","attrs":{"level":1},"children":[{"type":"text","text":"学习思路","id":""}],"text":"","id":"ECkydGqiIoEmKoxQzshckC4rncd"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"认识编程","id":""}],"text":"","id":"IkSQdA02Ko64KKxoHAGc6cEwnIb"},{"type":"paragraph","children":[{"type":"text","text":"编程语言(programming language)又称程序设计语言,是一组用特定语言编写的用于执行特定任务的指令。主要用于开发桌面应用、操作系统、网站、移动应用等。","id":""}],"text":"","id":"HM2udQ0giowuekxoV1kchShynhc"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"低级编程语言","id":""}],"text":"","id":"CkEQdgiGooaKGaxesABch5T1nlh"},{"type":"paragraph","children":[{"type":"text","text":"它基于二进制数 0 和 1 工作,处理器直接运行低级程序,不需要编译器或解释器,因此用低级语言编写的程序可以运行得非常快。","id":""}],"text":"","id":"UgoMde6QIou8yAxambScEu1vnOb"},{"type":"paragraph","children":[{"type":"text","text":"低级语言进一步分为两部分","id":""}],"text":"","id":"ASy6dMoGooWsKaxeCDAcTUajnde"},{"type":"paragraph","children":[{"type":"text","marks":[{"type":"strong"}],"text":"机器语言","id":""}],"text":"","id":"Z8MKdYOOmoucO0xai2uc1TUKnTd"},{"type":"paragraph","children":[{"type":"text","text":"机器语言也称为机器代码或目标代码,更容易阅读,因为它通常以二进制或十六进制形式(基数 16)形式显示。","id":""}],"text":"","id":"RIgMdsykeoaykIxawjVcRE7HnXf"},{"type":"paragraph","children":[{"type":"text","text":"它不需要翻译器来转换程序,因为计算机直接理解机器语言程序。","id":""}],"text":"","id":"LMsSdcWGsooA00xgzJUcR80Inuf"},{"type":"paragraph","children":[{"type":"text","marks":[{"type":"strong"}],"text":" 汇编语言","id":""}],"text":"","id":"Xi0gdKkgGo0oKYxE0vacrHAtngb"},{"type":"paragraph","children":[{"type":"text","text":"汇编语言是为特定处理器设计的,它以象征性和人类可理解的形式表示一组指令。它使用汇编程序将汇编语言转换为机器语言。","id":""}],"text":"","id":"GYOQdMKQuoGkoExyYdkcuU2anIf"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"中级编程语言","id":""}],"text":"","id":"RGmIdsSwmoY8A2x89NUcdbWbnjg"},{"type":"paragraph","children":[{"type":"text","text":"中级编程语言介于低级编程语言和高级编程语言之间。","id":""}],"text":"","id":"Q822d2sssoQQGYxAzK6c9GqFnbd"},{"type":"paragraph","children":[{"type":"text","text":"它也被称为中间程序语言和伪语言。","id":""}],"text":"","id":"BuG2d8s6AoiIWCxGQt1cGdbgneg"},{"type":"paragraph","children":[{"type":"text","text":"中级编程语言的优点是支持高级编程的特性,是一种用户友好的语言,与机器语言和人类语言密切相关。","id":""}],"text":"","id":"FIg6dMMGaoYSu0xSyhpcKu46nPh"},{"type":"paragraph","children":[{"type":"text","text":"例如:C、C++","id":""}],"text":"","id":"LK8sduKWaoa0oUxQXspcudVbnid"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"高级编程语言","id":""}],"text":"","id":"FaYsdG0KqoOGW6xa4u0c0UQVn9c"},{"type":"paragraph","children":[{"type":"text","text":"高级编程语言 (HLL) 旨在开发用户友好的软件程序和网站。","id":""}],"text":"","id":"Rsi4dE64WoykEkxzYAIcCNc8nbH"},{"type":"paragraph","children":[{"type":"text","text":"这种编程语言需要编译器或解释器将程序翻译成机器语言(执行程序)。","id":""}],"text":"","id":"IOqmdGCEcoeC2wxXJElc68FsnvL"},{"type":"paragraph","children":[{"type":"text","text":"示例:Python、Java、JavaScript、PHP、C#、C++ 等。","id":""}],"text":"","id":"CgagdYoyyoQMCwxJ65zcUJF6ntC"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"编程实践","id":""}],"text":"","id":"KGCQdQuyyoIu8Cx8DxYcWwFGnXf"},{"type":"paragraph","children":[{"type":"text","marks":[{"type":"strong"}],"text":"学习编程语言的过程简单描述为:过、抄、仿、改、调、看、练、创、悟。","id":""}],"text":"","id":"JUUOdqi2Ko6mSix0qMBcv94pnAb"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"过","id":""}],"text":"","id":"HqSsduwsUoqSamxyGKWcWlLqnDd"},{"type":"paragraph","children":[{"type":"text","text":"基础知识点不求深解,语言什么样的,适用场合、基本语法格式","id":""}],"text":"","id":"XO0mdIAcMoOisgxuAb6cTIvHn9I"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"抄代码","id":""}],"text":"","id":"ZwqWdC2AioWsWGxNBikcRf0unBf"},{"type":"paragraph","children":[{"type":"text","text":"从书上抄、例子中抄、边抄边想边想边回忆语法","id":""}],"text":"","id":"XQWmdmoMcoQ82axuI6Lcjb6knDe"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"模仿改","id":""}],"text":"","id":"WOc0dUWuAogWYAx8vZycJ1OYnfd"},{"type":"paragraph","children":[{"type":"text","text":"仿照给出的代码写出自己的代码","id":""}],"text":"","id":"Iokkd0EewoMSMuxqCAKch8tRnZf"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"勤调试","id":""}],"text":"","id":"CCIsd2secoIAiOxUXGhcQ55Mncc"},{"type":"paragraph","children":[{"type":"text","text":"不断调试验证自己想法,继续思考,再次验证。熟悉调试工具调试方法","id":""}],"text":"","id":"Sg8CdMOy8oMyysxC0jyc1mzunff"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"看n遍","id":""}],"text":"","id":"UW4Id0cOooa6EAxIro7c3bT5nle"},{"type":"paragraph","children":[{"type":"text","text":"出错或者遇到问题时,将代码从头到尾看n遍直到快记住,找出问题原因","id":""}],"text":"","id":"ROsUdMEyQoewGUxB0JWcntn7nh6"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"练","id":""}],"text":"","id":"Ag2EdIGQQowSOOxRfD2cRMnOnNl"},{"type":"paragraph","children":[{"type":"text","text":"2-5步三遍以上","id":""}],"text":"","id":"D8eod4eqmoEUcQx0XNVcgNE9n7Z"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"创新","id":""}],"text":"","id":"JqU2damiUoQm4CxUSSDcpg16nAn"},{"type":"paragraph","children":[{"type":"text","text":"拿出一个没有写过的根据要求,一步一步写出来,写不出来参考6","id":""}],"text":"","id":"DIeidUEkooIGGWxmAUQcWltanhh"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"悟","id":""}],"text":"","id":"V4ikdSQY4oacQWxQ3RocOJTbnQc"},{"type":"paragraph","children":[{"type":"text","text":"主动找到写代码的感觉和成就感,保持下去。","id":""}],"text":"","id":"ZOCqd80k8oi8GgxkFcUcGuxan6b"},{"type":"paragraph","children":[{"type":"text","text":"选择大于努力,只有切入一个适合自己的开发方向,才能持续进步。关于开发方向,我有以下两个选择标准。 ","id":""}],"text":"","id":"R620d6Qwko6O4gxeS37cRQxjnwd"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":" 兴趣","id":""}],"text":"","id":"WCkGd64Gwo6UcqxoV8Icg1G8nCf"},{"type":"paragraph","children":[{"type":"text","text":"学习编程是一个非常枯燥的过程,内容多,时间长,成本高,即使报名了培训班也学不会,所以,我们首先要选择自己感兴趣的一个开发方向,这样不但能快速学习,以后还能持续进步。学习编程的过程是比较艰苦的,没有兴趣很难硬抗下来,此处的兴趣,是指别人无法撼动的热爱,是工作之余让你放松的事情。如果你只是有过某种想法,别人告诉你这个想法不靠谱,你就放弃了,这顶多是一时的鸡血。","id":""}],"text":"","id":"BgqEdSkuMoqmqExFM9Dc7lBYnmk"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"学习方式","id":""}],"text":"","id":"FG6OdgEWAosIcexYLUecc900nLd"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"费曼学习法","id":""}],"text":"","id":"FOYAdYUk6oEk4gx7u0ycaoPsnEy"},{"type":"paragraph","children":[{"type":"text","text":"在学完一个东西之后去给别人讲明白,注意是讲给别人听,当你写成文章发表在网上的时候,你自然会去用更通俗的语言,更清晰的逻辑去讲述这个事物背后的逻辑。这个过程是对自己学习的一个检验,也是加深映像整理思路的重要过程。","id":""}],"text":"","id":"EyYWdScu2o0ca2xIRdgcR5k2nnd"},{"type":"paragraph","children":[{"type":"text","text":"那么如果你是去记笔记的话,很有可能你会倾向于去照抄,或是不完全照抄,以“提纲”或是“知识点”的形式抄在本子上。说句实话,照抄的笔记真的没用,因为现在搜索引擎的能力已经可以让你把大多数东西快速找到,你为什么还要照抄到笔记本上呢?","id":""}],"text":"","id":"HSu4dusiqoIcCcxCOhTccQL5n3e"},{"type":"paragraph","children":[{"type":"text","text":"从功利的角度考虑,技术文章的写作,别人可以直接访问,也可以逐渐累积你的影响力,一个好的个人技术博客,会给你的简历加分很多,而一个厚厚的笔记本,没有人会管你记了什么。","id":""}],"text":"","id":"SOUSdQWIoo6OMYxIldZcuIU9nKh"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"做好笔记","id":""}],"text":"","id":"SUoEdyCk0oOa2Ux2lGlcxcJKnXd"},{"type":"paragraph","children":[{"type":"text","text":"大多数人没有过目不忘的神技,学了也不一定马上掌握,需要过后花时间慢慢领悟,而且还有忘掉的风险,所以对于重要的知识点都要做好笔记。编程的过程中总会遇到各种各样的问题,比如编程环境的配置,常用的快捷键,编程过程中的错误、异常,软件更新问题等等。面对这些问题都是如何解决的,一定要记录下来,一是增加自己解决问题的经验,而是以防下次出现。","id":""}],"text":"","id":"OGGwdgoU0oca0gxamqlcZ7HVnCf"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"多看官方文档","id":""}],"text":"","id":"HqyKdYYu8oU6QCxKmzicQi2qnxb"},{"type":"paragraph","children":[{"type":"text","text":"外文资料互联网是一个更新迭代很快的行业,所有编程语言都会不断的更新新功能和修复旧Bug,网上查的资料很有可能是旧的解决方案,现在已经不适用了。所以最好最快的方法就是查看官方文档。","id":""}],"text":"","id":"FGkAdKUGioyu6OxiQ7pcForVnXc"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"进入行业圈子","id":""}],"text":"","id":"OEwIdSQ4EoK0U8xHbsJcVXchnCw"},{"type":"paragraph","children":[{"type":"text","text":"只有进入行业圈子与其他人交流,你才了解最新的行业动态,才知道自己需要更新哪些技能。","id":""}],"text":"","id":"XqkadOImEoakm4xCGrscdtHOnrg"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"动手做项目","id":""}],"text":"","id":"SMIQdeS4Qo60gKxSE1qcpjf9n1b"},{"type":"paragraph","children":[{"type":"text","text":"学习编程的最终目的就是用所学的做出具有一定功能的项目,而做项目又是最好的学习和巩固知识的方式。如果前期能力不足就先做一些简单的功能模块,一步一步慢慢来,不要一开始就要实现各种酷炫炸天功能,遇到不会的就在网上查, 现在互联网这么发达,获取资源也及其方便。而且开发前也最好在网上查一下有没有已经成型的框架或模板,什么都自己做一是很耗费时间,二是自己技术能力不足还可能留下不少坑。","id":""}],"text":"","id":"E8SSdsQksoOykkxq8qhc2D9UnPh"},{"type":"heading","attrs":{"level":1},"children":[{"type":"text","text":"学习Python","id":""}],"text":"","id":"Noeodu46Eoyg4Oxcz2Lcvsh6nWf"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"安装编程环境","id":""}],"text":"","id":"Ucwad8wU0omK2YxUmNnc76Pjneb"},{"type":"paragraph","children":[{"type":"text","text":"第一步:访问Python官网,获取最新安装程序。","id":""}],"text":"","id":"CIWwdiUucoGM4Axe1XscufX4npb"},{"type":"image","attrs":{"height":253,"note":[{"type":"text","text":"安装编程环境","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/6243e00debbc4a70b8dc277fa202d4e3","width":500},"text":"","id":"ZAUEdiiUoockeYx4FwFcKNmVnsb"},{"type":"paragraph","children":[{"type":"text","text":" ","id":""},{"type":"text","text":"第二步:运行下载的安装程序,注意勾选“Add Python3.7 to PATH”,然后选择个性化安装,即“Customize installation”。","id":""}],"text":"","id":"DikMdkUMeoIIwOxEFNjcgKC8nfb"},{"type":"image","attrs":{"height":308,"note":[{"type":"text","text":"安装编程环境","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/61c8842e690b42fc8de3ab3bce410252","width":500},"text":"","id":"VeISdQwCcogI8yxKqjrcxkXBnXf"},{"type":"paragraph","children":[{"type":"text","text":" ","id":""},{"type":"text","text":"第三步:确保“pip”被勾选上,之后安装各种库需要用到pip。","id":""}],"text":"","id":"JakkdcOG8omkoCxUt62cPMoinKb"},{"type":"image","attrs":{"height":308,"note":[{"type":"text","text":"安装编程环境","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/257a0f4181604843b6b89e1ab0d338fc","width":500},"text":"","id":"HQUGdykoMoSUmGxymgjcOwounzg"},{"type":"paragraph","children":[{"type":"text","text":" ","id":""},{"type":"text","text":"第四步:高级选项,需要的可以修改安装目录,通常没有需要修改的,直接点“Install”。","id":""}],"text":"","id":"U8gUdO22So4GWMxk5AAcYxhgnwd"},{"type":"image","attrs":{"height":308,"note":[{"type":"text","text":"安装编程环境","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/a0bb9ea7ffad45d5aeef1f09f1dde2a4","width":500},"text":"","id":"IGQwdQag4oi06uxWuyacQYQAnwe"},{"type":"paragraph","children":[{"type":"text","text":" ","id":""},{"type":"text","text":"第五步:等待程序自动安装完成。","id":""}],"text":"","id":"ZqiadCqiEoWewYx0AC8cBcnTneh"},{"type":"image","attrs":{"height":308,"note":[{"type":"text","text":"安装编程环境","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/a46cba8c1cc64627a6bcb5bf991fe3f9","width":500},"text":"","id":"EmCWd0sMaoowOIxuA2lctZeXn8e"},{"type":"paragraph","children":[{"type":"text","text":" ","id":""},{"type":"text","text":"第六步:出现如下界面,说明安装已完成。","id":""}],"text":"","id":"CSiudKqaqomAkcx2B6tcVnpGnPd"},{"type":"image","attrs":{"height":308,"note":[{"type":"text","text":"安装编程环境","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/379805f0786b447583f0a32c4d573b32","width":500},"text":"","id":"UiCYdig0KoeIUWx049tcMB6bn6f"},{"type":"paragraph","children":[{"type":"text","text":" ","id":""},{"type":"text","text":"第七步:验证方法,Windows+R 键打开“运行”窗口,输入cmd运行,进入命令提示窗口,再输入python,进入Python的命令模式,输入 print(\"Hello\"),结果输出了 Hello,如下图所示,确定开发环境已安装完成。","id":""}],"text":"","id":"Lmoede4cuoEwQKxmabGcMLaXnXf"},{"type":"image","attrs":{"height":261,"note":[{"type":"text","text":"安装编程环境","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/f84920cc98b14ad9beb9aae12c2e06f7","width":500},"text":"","id":"MsIgduUaEosaG6xSunHcnIm8nvf"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"运行环境","id":""}],"text":"","id":"Lqiwde2SYoKEoOxquyEcgRRLnLd"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"Hello World!","id":""}],"text":"","id":"IIgSdccwkoeaG8xmadlcUw6Bnbh"},{"type":"paragraph","children":[{"type":"text","marks":[{"type":"strong"}],"text":"命令行","id":""}],"text":"","id":"JAaKdcMMUoSaKcxW4c1ccXeGnPb"},{"type":"paragraph","children":[{"type":"text","text":"在Linux命令行输入:$python","id":""}],"text":"","id":"Ac0Udg8sKoo64WxKUEpcVHc9ngc"},{"type":"paragraph","children":[{"type":"text","text":"将直接进入python。然后在命令行提示符\u003e\u003e\u003e后面输入:\u003e\u003e\u003eprint('Hello World!')","id":""}],"text":"","id":"C6OwdcCKao0kG8x4u6bchmSwn9e"},{"type":"paragraph","children":[{"type":"text","text":"可以看到,随后在屏幕上输出:","id":""}],"text":"","id":"HMyIdGao0omCcMxyu1Kc9DyFnQJ"},{"type":"paragraph","children":[{"type":"text","text":"Hello World!","id":""}],"text":"","id":"HCWydoCIKo02yMxOy7GcZ1MBnkc"},{"type":"paragraph","children":[{"type":"text","text":"print是一个常用函数,其功能就是输出括号中得字符串。","id":""}],"text":"","id":"K4gYdSoiuo00icxAHmpc1eimnGc"},{"type":"paragraph","children":[{"type":"text","text":"(在Python 2.x中,print还可以是一个关键字,可写成print 'Hello World!',但这在3.x中行不通 )","id":""}],"text":"","id":"BQACduGE6oCgSOx2fvYcEcbPn4f"},{"type":"paragraph","children":[{"type":"text","marks":[{"type":"strong"}],"text":"小程序","id":""}],"text":"","id":"NGqsdeUKwoewYQx3zgdcf4Q4nsb"},{"type":"paragraph","children":[{"type":"text","text":"另一个使用Python的方法,是写一个Python程序。用文本编辑器写一个.py结尾的文件,比如说hello.py","id":""}],"text":"","id":"LkWEdeSkSosWMexWc7PcjpdvnJg"},{"type":"paragraph","children":[{"type":"text","text":"在hello.py中写入如下,并保存:print('Hello World!')","id":""}],"text":"","id":"JgOsdAKe4ogmyExYHgLcTmQunyg"},{"type":"paragraph","children":[{"type":"text","text":"退出文本编辑器,然后在命令行输入:$python hello.py","id":""}],"text":"","id":"So08dE2imoYYQCxQ2QFcO82cnJL"},{"type":"paragraph","children":[{"type":"text","text":"来运行hello.py。可以看到Python随后输出Hello World!","id":""}],"text":"","id":"AIKCdsmeYoCwwUx0su3cHkHqnvb"},{"type":"paragraph","children":[{"type":"text","marks":[{"type":"strong"}],"text":"脚本","id":""}],"text":"","id":"ZsEMdwYWcoQOsQxSSv6cYylLn5e"},{"type":"paragraph","children":[{"type":"text","text":"我们还可以把Python程序hello.py改成一个可执行的脚本,直接执行:#!/usr/bin/env python","id":""}],"text":"","id":"LqUgd8CeQoCIeux81qFc7h69nHE"},{"type":"paragraph","children":[{"type":"text","text":"print('Hello World!')","id":""}],"text":"","id":"ASc8d6YmkoASeOxcNArcGC3Anbc"},{"type":"paragraph","children":[{"type":"text","text":"需要修改上面程序的权限为可执行:chmod 755 hello.py","id":""}],"text":"","id":"SY4Sd2aEMoy8E2x8moScAd5Gnbc"},{"type":"paragraph","children":[{"type":"text","text":"然后再命令行中,输入./hello.py","id":""}],"text":"","id":"KcuSdKiEGomYGmxcxZ9cfAzwn9d"},{"type":"paragraph","children":[{"type":"text","text":"就可以直接运行了。","id":""}],"text":"","id":"WoeudWqOAosyosx8vdLcVyTQnre"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"基本数据类型","id":""}],"text":"","id":"PCwKdMoS2oKi4gxFAqZctL2XnJp"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"变量不声明","id":""}],"text":"","id":"HsuQdOC6kosCkax4ML4cAJ8Dnje"},{"type":"paragraph","children":[{"type":"text","text":"Python的变量不需要声明,你可以直接输入:\u003e\u003e\u003ea = 10","id":""}],"text":"","id":"SoA0dk2IKogMgOxewwVc4LkKnMe"},{"type":"paragraph","children":[{"type":"text","text":"那么你的内存里就有了一个变量a, 它的值是10,它的类型是integer (整数)。 在此之前你不需要做什么特别的声明,而数据类型是Python自动决定的。","id":""}],"text":"","id":"KuuidCs4SooqGex6ZITcthxHnHc"},{"type":"paragraph","children":[{"type":"text","text":"\u003e\u003e\u003eprint(a)","id":""}],"text":"","id":"VUaadIGOqoYYS4xwFOLcR1CVnEh"},{"type":"paragraph","children":[{"type":"text","text":"\u003e\u003e\u003eprint(type(a))","id":""}],"text":"","id":"K2uYdIgSwoIaKexCWFvc3GZnnIe"},{"type":"paragraph","children":[{"type":"text","text":"那么会有如下输出:","id":""}],"text":"","id":"VYCKdqwy4oWG6Ux2xQjcXvipnzV"},{"type":"paragraph","children":[{"type":"text","text":"10","id":""}],"text":"","id":"FukWdMmaAoceg4xCaJ5c8ktfnuf"},{"type":"paragraph","children":[{"type":"text","text":"\u003cclass 'int'\u003e","id":""}],"text":"","id":"Mo4IdywqgoqKI8xSBu7cFmLyndb"},{"type":"paragraph","children":[{"type":"text","text":"这里,我们学到一个内置函数type(),用以查询变量的类型。","id":""}],"text":"","id":"C8yKdI8amoWwssxaEpQcGuK7nTf"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"回收变量名","id":""}],"text":"","id":"LmgCdYeiuoIWgWxOon3c3P1Hncd"},{"type":"paragraph","children":[{"type":"text","text":"如果你想让a存储不同的数据,你不需要删除原有变量就可以直接赋值。","id":""}],"text":"","id":"J0C0dc8UWo4CESx4m4jceRTAn4e"},{"type":"paragraph","children":[{"type":"text","text":"\u003e\u003e\u003ea = 1.3","id":""}],"text":"","id":"Tme6dEUG8ogECYxMrZOcjBzCnfg"},{"type":"paragraph","children":[{"type":"text","text":"\u003e\u003e\u003eprint(a,type(a))","id":""}],"text":"","id":"Xo8mdWieio2ayqxYvCqcNNnKnac"},{"type":"paragraph","children":[{"type":"text","text":"会有如下输出","id":""}],"text":"","id":"HEQgdWU6so2EW0x2pYGc8Up6nLf"},{"type":"paragraph","children":[{"type":"text","text":"1.3 \u003cclass 'float'\u003e","id":""}],"text":"","id":"Xe0Qd0YkEoWcUixQxzNcsc7BnQc"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"序列","id":""}],"text":"","id":"K4sIdyYiaooeSKx0ENocBIlknzb"},{"type":"paragraph","children":[{"type":"text","text":"sequence(序列)是一组有顺序的元素的集合,(严格的说,是对象的集合,但鉴于我们还没有引入“对象”概念,暂时说元素)序列可以包含一个或多个元素,也可以没有任何元素。","id":""}],"text":"","id":"NKG2d8UMAokU4mxs9Snc667DnQf"},{"type":"paragraph","children":[{"type":"text","text":"我们之前所说的基本数据类型,都可以作为序列的元素。元素还可以是另一个序列,以及我们以后要介绍的其他对象。","id":""}],"text":"","id":"SIe2duU4WoQEuMxUTXrcAmmKn2f"},{"type":"paragraph","children":[{"type":"text","text":"序列有两种:tuple(定值表; 也有翻译为元组) 和 list (表)","id":""}],"text":"","id":"RmMwdgGU4oqywAxIZbQcqQHjnNe"},{"type":"paragraph","children":[{"type":"text","text":"\u003e\u003e\u003es1 = (2, 1.3, 'love', 5.6, 9, 12, False) # s1是一个tuple","id":""}],"text":"","id":"WOaCdYes4o2k8yxWsrqckvlxnDd"},{"type":"paragraph","children":[{"type":"text","text":"\u003e\u003e\u003es2 = [True, 5, 'smile'] # s2是一个list","id":""}],"text":"","id":"De8ydgYi2o0ciixAjmgcINQnnzd"},{"type":"paragraph","children":[{"type":"text","text":"\u003e\u003e\u003eprint(s1,type(s1))","id":""}],"text":"","id":"IMqQdWcKEogyGuxORI4cXDm9n5N"},{"type":"paragraph","children":[{"type":"text","text":"\u003e\u003e\u003eprint(s2,type(s2))","id":""}],"text":"","id":"EY6idcQaooqaaGx0o8HcNZcmnHc"},{"type":"paragraph","children":[{"type":"text","text":"tuple和list的主要区别在于,一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更。","id":""}],"text":"","id":"A8A0d4wsEoQM6gxy8wfczcPunJg"},{"type":"paragraph","children":[{"type":"text","text":"一个序列作为另一个序列的元素","id":""}],"text":"","id":"BiqUdsI6Koks4gxyig4ckRhgnGd"},{"type":"paragraph","children":[{"type":"text","text":"\u003e\u003e\u003es3 = [1,[3,4,5]]","id":""}],"text":"","id":"YoyEdOKywoYs8Ax4E1ic6uIan3c"},{"type":"paragraph","children":[{"type":"text","text":"空序列","id":""}],"text":"","id":"OWykdUkeWo4UOQxWiu3cKYkDnAd"},{"type":"paragraph","children":[{"type":"text","text":"\u003e\u003e\u003es4 = []","id":""}],"text":"","id":"VWEIdSqWooyg40xMpeYcDMo9nbd"},{"type":"heading","attrs":{"level":1},"children":[{"type":"text","text":"自学","id":""}],"text":"","id":"KW4Odiy8Eo4QyMxmAKFciGS8n4f"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"网站","id":""}],"text":"","id":"G4AadueAIoa4o8xs9gwcSrAxnme"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"菜鸟网站","id":""}],"text":"","id":"KqWid0A6UoAOIAxIlTWcxC9Nnsd"},{"type":"paragraph","children":[{"type":"text","text":"这个python教程很适合小白学习,没有高深的原理,照着教程学就完事了。","id":""}],"text":"","id":"UiaCdQGKyo6Wg2xwxHoc2Dxmnxt"},{"type":"paragraph","children":[{"type":"text","text":"菜鸟教程是一个提供免费编程学习的网站,里面不但能学到编程知识,还能运用在线编程工具,使你在学习的过程中得到发挥,实践得真理,边学边做中让基础打得更稳,让自己的知识更加稳固。在自己有不明白不理解的地方可以在网站的用户笔记中寻找大佬们的笔记,把自己所学和技术大佬的经验所融合,使自己更好地提升自己的能力。","id":""}],"text":"","id":"ZEgwdWWSsoq682x8f5wchxAynZe"},{"type":"paragraph","children":[{"type":"text","text":"菜鸟教程内容丰富,例如前端热门语言HTML5、CSS3、JavaScript、Vue等它该有的都有,都会从最基础的开始教,让刚学编程的小白由浅及深,一看就懂。每个知识点都有实例可以动手,直接在页面内做你想要的效果真的非常棒。菜鸟的排版简洁清晰有序,内容一针见血,让你一看就能明白其知识点的含义。","id":""}],"text":"","id":"WiU8de84coa6cQxcTG1chmmunkh"},{"type":"paragraph","children":[{"type":"text","text":"菜鸟教程不仅前端教程语言丰富,后端的Java、PHP、Python更是一应俱全,当然数据库、移动端、XML、","id":""},{"type":"text","text":"ASP.NET","id":""},{"type":"text","text":"、Web Service、开发工具和网站建设也是应有尽有,菜鸟教程有学到的知识如此之多,奋斗吧少年。","id":""}],"text":"","id":"RggwdQ6uqoSiQWxI1ENck2ktnYe"},{"type":"image","attrs":{"height":383,"note":[{"type":"text","text":"菜鸟网站","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/0798ab45151c4bd0ad7d0b1c1b4f9566","width":720},"text":"","id":"NI2SdAC2QosicOxQ9YxcHeSknnh"},{"type":"paragraph","children":[{"type":"text","text":" ","id":""}],"text":"","id":"DsoCdsMcuoAoi0x8BarcCb3Sn3f"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"廖雪峰的官方网站","id":""}],"text":"","id":"CwsqdmSY6os00wxdcNSctzmwnHH"},{"type":"paragraph","children":[{"type":"text","text":"廖雪峰的官方网站比较推荐新手程序员学习前端,这个网站的教学视频的讲解相对来说会比较生动,没有其他教程那么死板,看起来也不至于那么犯困,也更便于新手去理解。总的来说,廖雪峰的官方网站作为一款启蒙类的前端学习网站还是相当不错的。","id":""}],"text":"","id":"SimcdEA4mo2QwExkXoAcSn0RnEh"},{"type":"image","attrs":{"height":750,"note":[{"type":"text","text":"廖雪峰的官方网站","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/b21b64b7b6c74706ab17469ccbf6b14b","width":1783},"text":"","id":"NWWwdMy2AoWIwgxI10pcF9jJnhh"},{"type":"heading","attrs":{"level":3},"children":[{"type":"text","text":"Python官方教程","id":""}],"text":"","id":"M0cGdIGsSoAYA8xaOKYcPxMInuf"},{"type":"paragraph","children":[{"type":"text","text":"这是Python官方出品的教程,可搭配Python标准库一起学。","id":""}],"text":"","id":"QCUKde0YCoe4aixMp6mc34NynAf"},{"type":"image","attrs":{"height":810,"note":[{"type":"text","text":"Python官方教程","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/4871398dc75d4de4ab867263607d7048","width":1445},"text":"","id":"NQI2dc86io4EgwxgVEXcl1svnae"},{"type":"heading","attrs":{"level":2},"children":[{"type":"text","text":"书籍","id":""}],"text":"","id":"ZYEAdMaCaoY8mSxGJFecEcpannb"},{"type":"paragraph","children":[{"type":"text","marks":[{"type":"strong"}],"text":"《Python编程从入门到实践(第2版)》","id":""}],"text":"","id":"OKe4diK4goU4Swxg9Edc2CcjnQZ"},{"type":"paragraph","children":[{"type":"text","text":"作者:埃里克·马瑟斯 (EricMatthes)袁国忠 译","id":""}],"text":"","id":"PKQcdAAcGoUoC0xOqEocFhTCnlh"},{"type":"paragraph","children":[{"type":"text","text":"ISBN:9787115546081","id":""}],"text":"","id":"DyUWd4aUio4a60xu6ogcPj1Bn2d"},{"type":"paragraph","children":[{"type":"text","text":"出版:人民邮电出版社","id":""}],"text":"","id":"Rs42dYymGoSIuUxWU7RctjUznMe"},{"type":"paragraph","children":[{"type":"text","text":"本书是针对所有层次Python读者而作的Python门书。全书分两部分:部分介绍用Python编程所必须了解的基本概念,包括强大的Python库和工具,以及列表、字典、if语句、类、文件与异常、代码测试等内容;第二部分将理论付诸实践,讲解如何发三个项目,包括简单的2D游戏、利用数据生成交互式的信息图以及创建和定制简单的Web应用,并帮助读者解决常见编程问题和困惑。","id":""}],"text":"","id":"HoQodykKqo8COCxqyqwccoimnKh"},{"type":"image","attrs":{"height":619,"note":[{"type":"text","text":"书籍","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/f952cca888c0454e838c59d17090daf7","width":501},"text":"","id":"ZU6qdUUScoCUA4x46jtchHQIndf"},{"type":"paragraph","children":[{"type":"text","marks":[{"type":"strong"}],"text":"《像计算机科学家一样学Python》","id":""}],"text":"","id":"E28edua0koSygsxnyHBcIkeznGk"},{"type":"paragraph","children":[{"type":"text","text":"ISBN:9787115425515","id":""}],"text":"","id":"N44Udusiso2siQx61owcIo13n6d"},{"type":"paragraph","children":[{"type":"text","text":"作者:","id":""},{"type":"text","text":"艾伦","id":""},{"type":"text","text":" B. ","id":""},{"type":"text","text":"唐尼","id":""},{"type":"text","text":"(","id":""},{"type":"text","text":"Allen","id":""},{"type":"text","text":" B. ","id":""},{"type":"text","text":"Downey","id":""},{"type":"text","text":")","id":""}],"text":"","id":"RkEudeuIsoy2CmxW6NxcCRV1nfh"},{"type":"paragraph","children":[{"type":"text","text":"出版:人民邮电出版社","id":""}],"text":"","id":"WYKKdki4WoSykmx6OJVcqWOunDg"},{"type":"paragraph","children":[{"type":"text","text":"本书以培养读者以计算机科学家一样的思维方式来理解Python语言编程。贯穿全书的主体是如何思考、设计、发的方法,而具体的编程语言,只是提供了一个具体场景方便介绍的媒介。全书共21章,详细介绍Python语言编程的方方面面。本书从基本的编程概念始讲起,包括语言的语法和语义,而且每个编程概念都有清晰的定义,引领读者循序渐地学习变量、表达式、语句、函数和数据结构。书中还探讨了如何处理文件和数据库,如何理解对象、方法和面向对象编程,如何使用调试技巧来修正语法错误、运行时错误和语义错误。","id":""}],"text":"","id":"BK6ydyYuaouyusx4pJfcnzCvnPh"},{"type":"image","attrs":{"height":701,"note":[{"type":"text","text":"书籍","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/2fcdba851350469c8f20a6fd2e54a3f8","width":526},"text":"","id":"Gukwd8S6oo0uMKxNGdKcgvECnCz"},{"type":"paragraph","children":[{"type":"text","marks":[{"type":"strong"}],"text":"《计算机科学丛书:Java编程思想》","id":""}],"text":"","id":"Qyk4dmCKMouoUwxDv4BcZSonnv6"},{"type":"paragraph","children":[{"type":"text","text":"ISBN:9787111213826","id":""}],"text":"","id":"LOyCdEOUeo0MSixsRQOcsCACn1A"},{"type":"paragraph","children":[{"type":"text","text":"作者:[美] Bruce Eckel","id":""}],"text":"","id":"NY06d6MISoicmMxkpXAcDYjwnxe"},{"type":"paragraph","children":[{"type":"text","text":"出版:机械工业出版社","id":""}],"text":"","id":"SASYdyGwMoMiMqx6Cn3c7fPfnFf"},{"type":"paragraph","children":[{"type":"text","text":"本书的作者拥有多年教学经验,对C、C++以及Java语言都有独到、深入的见解,以通俗易懂及小而直接的示例解释了一个个晦涩抽象的概念。本书共22章,包括操作符、控制执行流程、访问权限控制、复用类、多态、接口、通过异常处理错误、字符串、泛型、数组、容器深入研究、JavaI/O系统、枚举类型、并发以及图形化用户界面等内容。这些丰富的内容,包含了Java语言基础语法以及高级特性,适合各个层次的Java程序员阅读,同时也是高等院校讲授面向对象程序设计语言以及Java语言的好教材和参考书。","id":""}],"text":"","id":"DmCwdc4UWo8kIyxkrbKcGAPFn3S"},{"type":"image","attrs":{"height":603,"note":[{"type":"text","text":"书籍","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/58be17df22694f249be5f539f0f12cbf","width":436},"text":"","id":"NuusdkO0KoEuqcxkhDUcaHIinNd"},{"type":"paragraph","children":[{"type":"text","marks":[{"type":"strong"}],"text":"《疯狂Java讲义》","id":""}],"text":"","id":"Za0CdW40komg2KxiOCtcsN4pnNf"},{"type":"paragraph","children":[{"type":"text","text":"ISBN:9787121361586","id":""}],"text":"","id":"XAcQd6qs0oWqqGxUFeAcY2danZe"},{"type":"paragraph","children":[{"type":"text","text":"作者:李刚","id":""}],"text":"","id":"HImOdIWASoK8YGxkvUZcJhCHnrh"},{"type":"paragraph","children":[{"type":"text","text":"出版:电子工业出版社","id":""}],"text":"","id":"P0s8dmIUioYcsIxE13WcCFIgnJc"},{"type":"paragraph","children":[{"type":"text","text":"《疯狂Java讲义(第4版)》深入介绍了Java编程的相关方面,《疯狂Java讲义(第4版)》内容覆盖了Java的基本语法结构、Java的面向对象特征、Java集合框架体系、Java泛型、异常处理、Java GUI编程、JDBC数据库编程、Java注释、Java的IO流体系、Java多线程编程、Java网络通信编程和Java反射机制。覆盖了java.lang、java.util、java.text、java.io和java.nio、java.sql、java.awt、javax.swing包下绝大部分类和接口。本书重点介绍了Java 9的模块化系统,还详细介绍了Java 9的jshell工具、多版本JAR包、匿名内部类的菱形语法、增强的try语句、私有接口方法,以及Java 9新增的各种API功能。","id":""}],"text":"","id":"HqYKdqMICoW6Iexk7uecKI1ZnNb"},{"type":"image","attrs":{"height":685,"note":[{"type":"text","text":"书籍","id":""}],"url":"{{image_domain}}tos-cn-i-qvj2lq49k0/73f9b8449be24d31b0eb1b31f5d545fa","width":528},"text":"","id":"Nosid8Yukoa0aOxA54IcivKanue"},{"type":"paragraph","children":[{"type":"text","text":"","id":""}],"text":"","id":"ESKMd2eyCoKUQmxCgyCcBWYbn6f"}]%3C%2Fhowto_content%3E

怎么可以看出一个网站是用的哪个程序?

首先,这是一个asp平台上的网站,肯定不是dede、WordPress这些php平台上的CMS程序,因为表单的提交用的是ashx文件。具体是asp平台上的哪个CMS程序,就得非常仔细的研究代码了。如果隐藏的非常好,几乎是看不出来的。

一次完整的http请求过程是怎样的?

面试中常问的一个问题就是:在浏览器输入 URL 地址回车后,发生了什么?这里简单概述一下。

总体流程图如下:

1. URL 解析

浏览器首先对 URL 解析,解析出协议、域名、端口、资源路径、参数等。

2. DNS 域名解析

一般而言,域名比 IP 地址更好记,因而我们更习惯在浏览器输入域名而不是 IP,而计算机网络通信所识别的计算机标识是 IP 地址,因而首先需要将一个域名转化为相应的 IP 地址,这就是 DNS 协议所要做的事。

DNS 就像我们手机中的通讯录一样,通讯录中备注的是对方的姓名(类似于域名),但是打电话的时候实际需要的是电话号码(类似于 IP 地址),利用通讯录将一个姓名转化为对应的电话号码。

3. 建立 TCP 连接

一般在浏览器输入 URL,应用层的协议为 HTTP/HTTPS,其需要的是可靠的服务,所使用的传输层协议为 TCP。

通过域名解析后,浏览器获得了服务器的 IP,则向服务器发起 TCP 连接,这时候就会发生三次握手行为。

4. 发送 HTTP 请求

当浏览器与服务器建立连接后,就可以进行数据通信过程,浏览器会给服务器发送一个 HTTP 请求报文,请求报文包括请求行、请求头、请求空行和请求体。在请求行中会指定方法、资源路径以及 HTTP 版本,其中资源路径是指定所要操作资源在服务器中的位置,而方法是指定要对这个资源做什么样的操作。

从浏览器输入 URL,资源路径在第一步就已经被解析出来了,而方法为 GET,表明要获取资源,相当于增删改查中的查询。

5. 服务器对请求进行处理并做出响应

当收到浏览器发送的请求报文后,服务器会对此请求报文进行相应的处理,并返回响应报文给浏览器。比如请求报文想要获取(GET) index.html 这个文件,那么服务器就会找到 index.html 文件,然后将此文件作为响应报文中的响应体发送给浏览器。

响应报文包括响应行、响应头、响应空行和响应体。在响应行中会指定 HTTP 版本、状态码和对状态码的解释信息,比如 HTTP/1.1 200 OK ,其中 200 是响应码,指请求被正常处理,也就是成功 OK 的意思。

6. 浏览器解析渲染页面

浏览器收到服务器的响应报文后,从响应体中得到相应资源,如 HTML 文件、图片、视频等,并进行渲染,然后将结果呈现给用户。

7. 断开 TCP 连接

当数据完成请求到返回的过程之后,根据请求/相应头中 Connection 的 Keep-Alive 属性可以选择是否断开 TCP 连接,如果不需要再进行数据通信,即可以关闭连接,此时则会发生四次挥手行为。

注意:

浏览器为了提升性能,在 URL 解析之后,实际会先查询是否有缓存,如果缓存命中,则直接返回缓存资源。如果是 HTTPS 协议,在建立 TCP 连接之后,还需要进行 SSL/TLS 握手过程,以协商出一个会话密钥,用于消息加密,提升安全性。

学PS难不难?

Adobe Photoshop,简称“PS”,是由Adobe Systems开发和发行的图像处理软件。Photoshop主要处理以像素所构成的数字图像。使用其众多的编修与绘图工具。

对Photoshop爱好者而言,通过Photoshop处理过的图片,即非原始、非未处理的图片。一般用于修复修改照片、视觉创意、界面设计、图标制作、电商设计等。

听起来好像很专业的感觉,其实也没那么复杂。

它就像一支笔一样,至于你能写出什么或者画出怎样的水平那就得后期怎么去学了。

而学习好PS也不是一朝一夕就能学好的,小编玩PS有15年,下面写一些心得体会。

1.兴趣,兴趣是最好的老师,也是学习的开始。如果你感兴趣,就会事半功倍。

2.什么都不懂,没有美术基础,也不是科班出身,怎么办呢?

这个不是每个人天生都自带的,你所见到的每个高手都是也不是天生就会,也不是天赋过人,之所以人家玩得好那是人家学的比较早,通过自己的努力才得来的成功,这个每个人都是可以通过自身努力而获得的,当然你也不例外

3.学习从模仿开始,先把别人的作品作为练习的对象,进行反复练习,不断的摸索规律,总结经验。

4.对于设计的审美,这个是非常重要的。这个就是区别于一个设计师的水准了。每个人审美不一样,那么怎么提高自己的审美呢,建议大家平时多去看一些优秀的作品,多思考,慢慢的审美的感官就会不断提高。

5.有人问:自学好还是有人带更好呢?自学并不是说学不会,但是需要很强的耐心跟毅力,三分钟热度可以不行。不过如果有老师指导,帮你指路,那就更好了,会避免很多不必要的弯路。

学习PS能做什么,有什么用处呢,个人觉得有如下几点用处:

(1)平面设计:PS最常用是平面设计,我们平时看到的图书封面,海报等各种类型的印刷制品,大多数是通过PS软件设计出来的。在平面设计与制作中,photoshop已经完全渗透到了包装、海报、平面广告、印刷等各个环节。

(2)照片修复、美化:PS 对修复图像方面实在下足了功夫,我们可以通过里面各种工具来进行照片修复,比如修复画笔工具、修补工具、仿制图章工具等工具,我们只要灵活运用这些工具就可以将照片很完美的修复出来。

(3)网页设计:这几年IT行业越来越火,网页设计师也是非常抢手的,那么要做好一个好的设计师,首先你要学会PS,所以学好PS对做好网页设计是非常有帮助的。除了上面3点外,在广告摄影,绘画、婚纱照片设计等领域都运用到PS技术。Photoshop 的应用领域非常广泛,毫不夸张地说,凡是有图像的地方,基本都能找到 Photoshop 的影子。

这么多领域用到PS技术,那我们该如何学好PS呢,有3点不错建议分享给大家:(1)多看书,看视频:先可以在网上找些免费基础教程进行学习,当你看好视频有一定基础后,你也可以去网上买一本最热销的关于PS的书,照着书全部在做一遍,在学习过程中要做好一些有用的笔记,这样对你以后的使用很有帮助。在PS学习过程中,你首先要打好基础,一些重要的工具要多加练习,熟能生巧。(2)多练,多实践:只有练的多了,才能掌握那种度,做出来的图片自然而然就很好看,PS总的来说不是很难,只是想做出好的作品要有灵感,多练,实践,时间长了就好了。(3)多模仿,多思考:网上可以多找一些例子模仿去做,慢慢做多了,手感来了,技术就会慢慢提高了,当你自己对这方面有一定经验了,这样后续你做起来的图片也就会越来越自然了。平时可以找个相似的场景或物件,认真观察,从现实中找到一些灵感进行创作。

能做到这几点,下一个PS高手就是你!

如何防止服务器被入侵?

你的问题,有我回答,我是IT屠工!

1、用户安全

(1) 运行 lusrmgr.msc,重命名原 Administrator 用户为自定义一定长度的名字, 并新建同名Administrator 普通用户,设置超长密码去除所有隶属用户组。

(2) 运行 gpedit.msc ——计算机配置—安全设置—账户策略—密码策略 启动密码复杂性要求,设置密码最小长度、密码最长使用期限,定期修改密码保证 服务器账户的密码安全。

(3) 运行 gpedit.msc ——计算机配置—安全设置—账户策略—账户锁定策略 启动账户锁定,设置单用户多次登录错误锁定策略,具体设置参照要求设置。

(4) 运行 gpedit.msc ——计算机配置—安全设置—本地策略—安全选项 交互式登录 :不显示上次的用户名;——启动 交互式登录:回话锁定时显示用户信息;——不显示用户信息

(5) 运行 gpedit.msc ——计算机配置—安全设置—本地策略—安全选项

网络访问:可匿名访问的共享;——清空

网络访问:可匿名访问的命名管道;——清空

网络访问:可远程访问的注册表路径;——清空

网络访问:可远程访问的注册表路径和子路径;——清空

(6) 运行

gpedit.msc

——计算机配置—安全设置—本地策略 通过终端服务拒绝登陆——加入一下用户

ASPNET

Guest IUSR_***** IWAM_*****

NETWORK SERVICE

SQLDebugger

注:用户添加查找如下图:

(7) 运行 gpedit.msc ——计算机配置—安全设置—本地策略—策略审核 即系统日志记录的审核消息,方便我们检查服务器的账户安全,推荐设置如下:

2、共享安全

(1) 运行 Regedit——删除系统默认的共享 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameter

s]增加一个键:名称 : AutoShareServer ; 类型 : REG_DWORD值; : 0

(2) 运行 Regedit——禁止 IPC 空连接 [Local_Machine/System/CurrentControlSet/Control/LSA] 把 RestrictAnonymous 的键值改成 ”1”。

3. 服务端口安全

(1) 运行 Regedit——修改 3389 远程端口

打开 [HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Control\Terminal

Server\Wds\rdpwd\Tds\tcp],将 PortNamber 的键值(默认是3389 )修改成自定义端 口:14720

打开 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro1Set\Control\Tenninal Server\WinStations\RDP-Tcp] ,将 PortNumber 的键值(默认是3389)修改成自定义 端口 :14720

(2) 运行 services.msc——禁用不需要的和危险的服务 以下列出建议禁止的服务,具体情况根据需求分析执行:

Alerter 发送管理警报和通知

Automatic Updates Windows 自动更新服务

Computer Browser 维护网络计算机更新(网上邻居列表)

Distributed File System 局域网管理共享文件

Distributed linktracking client 用于局域网更新连接信息

Error reporting service 发送错误报告

Remote Procedure Call (RPC) Locator RpcNs*远程过程调用(RPC)

Remote Registry 远程修改注册表

Removable storage 管理可移动媒体、驱动程序和库

Remote Desktop Help Session Manager 远程协助

Routing and Remote Access 在局域网以及广域网环境中为企业提供路由服务

Shell Hardware Detection 为自动播放硬件事件提供通知。

Messenger 消息文件传输服务

Net Logon 域控制器通道管理

NTLMSecuritysupportprovide telnet 服务和 Microsoft Serch 用的

PrintSpooler 打印服务

telnet telnet 服务

Workstation 泄漏系统用户名列表(注:如使用局域网请勿关闭)

(3) 运行 gpedit.msc —— IPSec安全加密端口,内部使用加密访问。

原理:利用组策略中的“ IP 安全策略”功能中,安全服务器(需要安全)功能。

将 所有访问远程如13013 端口的请求筛选到该ip安全策略中来, 使得该请求需要通过 双方的预共享密钥进行身份认证后才能进行连接,其中如果一方没有启用“需要安全”时,则无法进行连接,同时如果客户端的预共享密钥错误则无法与服务器进行 连接。在此条件下,不影响其他服务的正常运行。

操作步骤:

1) 打开

GPEDIT.MSC

,在计算机策略中有“ IP 安全策略” ,选择“安全服务器(需要 安全)”项目属性,然后在IP 安全规则中选择“所有IP 通信”打开编辑,在“编 辑规则属性”中,双击“所有IP通信”,在 IP 筛选器中,添加或编辑一个筛选

2) 退回到 “编辑规则属性” 中,在此再选择“身份验证方法” 。删除“ Kerberos 5”,

点击添加,在“新身份验证方法”中,选择“使用此字符串(预共享密钥) ,然后填写服务器所填的预共享密钥 (服务器的预共享密钥为 ”123abc,.”)。然后确 定。

3) 选择“安全服务器(需要安全)”右键指派即可。 附截图:

以上是我的回答,希望可以帮助到您!

本文转载自互联网,如有侵权,联系删除