python 初识

CPU 内存 硬盘 操作系统之间的关系
cpu:
中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。

中央处理器主要包括运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)和高速缓冲存储器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。它与内部存储器(Memory)和输入/输出(I/O)设备合称为电子计算机三大核心部件。

内存:
内存是计算机中重要的部件之一,它是与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来,内存的运行也决定了计算机的稳定运行。 内存是由内存芯片、电路板、金手指等部分组成的。

硬盘:
硬盘是电脑主要的存储媒介之一,由一个或者多个铝制或者玻璃制的碟片组成。碟片外覆盖有铁磁性材料。
硬盘有固态硬盘(SSD 盘,新式硬盘内有sata固态、m.2固态、pci-e固态,而m.2固态又有nvme的m.2和sata的m.2)、机械硬盘(HDD 传统硬盘内有32寸、64寸的,还有4300转和7200转)、混合硬盘(HHD 一块基于传统机械硬盘诞生出来的新硬盘)。SSD采用闪存颗粒来存储,HDD采用磁性碟片来存储,混合硬盘(HHD: Hybrid Hard Disk)是把磁性硬盘和闪存集成到一起的一种硬盘。绝大多数硬盘都是固定硬盘,被永久性地密封固定在硬盘驱动器中。
磁头复位节能技术:通过在闲时对磁头的复位来节能。
多磁头技术:通过在同一碟片上增加多个磁头同时的读或写来为硬盘提速,或同时在多碟片同时利用磁头来读或写来为磁盘提速,多用于服务器和数据库中心。



操作系统:
操作系统(英语:operating system,缩写作 OS)是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。
操作系统的类型非常多样,不同机器安装的操作系统可从简单到复杂,可从移动电话的嵌入式系统到超级计算机的大型操作系统。许多操作系统制造者对它涵盖范畴的定义也不尽一致,例如有些操作系统集成了图形用户界面,而有些仅使用命令行界面,而将图形用户界面视为一种非必要的应用程序。


02,Python的产生与应用。

自从20世纪90年代初Python语言诞生至今,它已被逐渐广泛应用于系统管理任务的处理和Web编程。
Python的创始人为Guido van Rossum。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC 语言的一种继承。之所以选中Python(大蟒蛇的意思)作为该编程语言的名字,是因为他是一个叫Monty Python的喜剧团体的爱好者。
ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido 认为是其非开放造成的。Guido 决心在Python 中避免这一错误。同时,他还想实现在ABC 中闪现过但未曾实现的东西。就这样,Python在Guido手中诞生了。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unix shell和C的习惯。

python的应用领域
一、自动化工具开发
企业往往会需求自动化办公系统等多种多样的自动化开发工具,而根据公司业务的不同,开发需求自然而然会有所不同,通常需要根据实际需求定制,对开源软件进行二次开发,或者是自行开发相应的业务系统和工具。

二、业务技术架构评估和优化
代码本身的优劣足以影响到访问效率的高低,而这种影响是很难通过后天的集群和服务器的优化而有所改善的。而具备开发能力,可以使评估技术架构是否合理,哪些地方可以做出调整,具备开发和架构设计及调优能力可是成为一个出色架构师的必须能力。

三、做个全栈工程师
广义的全栈工程师是指能驾驭各种开发工具的工程师,而Python本身就有着很强的全栈式综合语言的特点,能够完成后端、前端、GUI、科学运算、网络编程、大数据开发等等,掌握了Python,会使你更快成为一名全栈程序员。

四、3D游戏开发
Python有很好的3D渲染库和游戏开发框架,有很多实用Python开发的游戏,如迪士尼卡通城、黑暗之刃。常用PyGame、PyKyra等和一个PyWeek的比赛。对于想要进军游戏行业的同学们,Python也是一个不错的选择。

五、利用python做爬虫
Python语言还可以写爬虫,但仅仅只是爬虫的入门而已。过Python入门爬虫比较简单易学,不需要在一开始掌握太多太基础太底层的知识就可以很快上手,而且很快可以做出成果,非常适合小白一开始想做出点看得见的东西的成就感。如果想要往这个方向发展,Python是不错的入门选项。

六、大数据和人工智能
Python是机器学习和AI的主要开发语言。作为被用于机器学习和人工智能系统以及各种现代技术的一门语言,Python能够十分容易地应用于分析和组成可用的数据,这也使它成为数据科学中最流行的语言之一。而丰富的本机拓展也使Python的优势得以强化,更适用于机器学习、数据计算和人工智能领域。


04,编程语言的分类。
1、编译型语言和解释型语言
计算机不能直接的理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言的编写的程序。翻译的方式有两种,一个是编译,一个是解释。两种方式只是翻译的时间不同。

编译型语言:

需通过编译器(compiler)将源代码编译成机器码,之后才能执行的语言。一般需经过编译(compile)、链接(linker)这两个步骤。编译是把源代码编译成机器码,链接是把各个模块的机器码和依赖库串连起来生成可执行文件。编译和执行是分开的,但是不能跨平台。
优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。
缺点:编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件。
代表语言:C、C++、Pascal、Object-C、swift等。

解释型语言

解释性语言的程序不需要编译,相比编译型语言省了道工序,解释性语言在运行程序的时候才逐行翻译。每一个语句都是执行的时候才能翻译。这样解释性语言每执行一次要翻译一次,效率表较低。
优点:有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就可以,可以快速部署,不用停机维护。
缺点:每次运行的时候都要解释一遍,性能上不如编译型语言。
代表语言:JavaScript、Python、Erlang、PHP、Perl、Ruby

混合型语言

混合型语言也叫半编译型语言。比如java、C#,C#在编译的时候不是直接编译成机器码而是中间码,.NET平台提供了中间语言运行库运行中间码,中间语言运行库类似于Java虚拟机。.net在编译成IL代码后,保存在dll中,首次运行时由JIT在编译成机器码缓存在内存中,下次直接执行。



05,Python的优缺点。
python语言的优点
(1)作为初学python的科班出身的小白,python非常简单,非常适合人类阅读。阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。

(2)易学。python虽然是用c语言写的,但是它摈弃了c中非常复杂的指针,简化了python的语法。
(3)Python是FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。Python希望看到一个更加优秀的人创造并经常改进。 (4)可移植性————由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC、Symbian以及Google基于linux开发的Android平台!
   (5)在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机上,它就可以工作了,这也使得你的Python程序更加易于移植。  (6)Python既支持面向过程的函数编程也支持面向对象的抽象编程。在面向过程的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在面向对象的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。
(7)可扩展性和可嵌入性。如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。
(8)丰富的库。Python标准库确实很庞大。python有可定义的第三方库可以使用。它可以帮助你处理各种工 作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。记住,只要安装了Python,所有这些功能都是可用的。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。
(9) Python确实是一种十分精彩又强大的语言。它合理地结合了高性能与使得编写程序简单有趣的特色。
(10)规范的代码。Python采用强制缩进的方式使得代码具有极佳的可读性。

python语言的缺点
很多时候不能将程序连写成一行,如import sys;for i in sys.path:print i。而perl和awk就无此限制,可以较为方便的在shell下完成简单程序,不需要如Python一样,必须将程序写入一个.py文件。(对很多用户而言这也不算是限制)
(1)运行速度,有速度要求的话,用C++改写关键部分吧。不过对于用户而言,机器上运行速度是可以忽略的。因为用户根本感觉不出来这种速度的差异。
(2)既是优点也是缺点,python的开源性是的Python语言不能加密,但是目前国内市场纯粹靠编写软件卖给客户的越来越少,网站和移动应用不需要给客户源代码,所以这个问题就是问题了。国随着时间的推移,很多国内软件公司,尤其是游戏公司,也开始规模使用他。
(3)构架选择太多(没有像C#这样的官方.net构架,也没有像ruby由于历史较短,构架开发的相对集中。Ruby on Rails 构架开发中小型web程序天下无敌)。不过这也从另一个侧面说明,python比较优秀,吸引的人才多,项目也多。

06,python的种类。
CPython
当从Python官方网站下载并安装好Python2.7后,就直接获得了一个官方版本的解释器:Cpython,这个解释器是用C语言开发的,所以叫 CPython,在命名行下运行python,就是启动CPython解释器,CPython是使用最广的Python解释器。

IPython
IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的,好比很多国产浏览器虽然外观不同,但内核其实是调用了IE。

PyPy
PyPy是另一个Python解释器,它的目标是执行速度,PyPy采用JIT技术,对Python代码进行动态编译,所以可以显著提高Python代码的执行速度。

Jython
Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。

IronPython
IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

07,安装python环境。
08,运行第一个python代码。
进入终端cmd:python 文件路径 回车
python2x python3x 编码不同
python2x默认的编码是asiic, 在文件的首行:#-*- encoding:utf-8 -*-
python3x默认的编码是utf-8

09,变量。
why:
# print(1+2+3+4+5)
# print((1+2+3+4+5)*3/2)
# print((((1+2+3+4+5)*3/2)+100)/5)

x = 1+2+3+4+5
y = x*3/2
z = (y+100)/5
print(z)
更加清晰明了。
what: 变量,将程序中一些中间结果暂存到内存,以遍后续程序调用。
how: 变量的设定:
1,变量必须由数字,字母,下划线任意组合。
2,不能是数字开头。
3,不能使用Python中的关键字。
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del',
'elif', 'else', 'except', 'exec',
'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not',
'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
4,变量要具有可描述性。
5,变量不能过长。
abcfdfsdafdsgfdg = 'f'
6,变量不能使用中文。
7,建议:驼峰体,下划线。

AgeOfOldboy = 73

age_of_oldboy = 73

where:
程序中会大量的出现使用变量:暂存一些少量的数据,让变量代指。

10,常量。
why:身份证号 ,π,历史的记载:新中国成立:1949101,
程序中有一些数据也是会不变的。

what:常量 一直不变的量。

how: 约定俗成 将变量全部变成大写,就是常量。
where:
将一些不想让别人改变的量设置成常量,放在文件中最上面。


11,注释。
why: 文言文中对一些晦涩难懂的,一些典故做一些解释说明。程序中也需要。
what:注释:解释说明。

how:
单行注释: 行首:#
多行注释: '''被注释内容''' 或者 """ 被注释内容"""
where:
自认为精简的代码别人看不懂,
函数,类,文件中 都需要注释。

12,基础数据类型的初识(int str bool)。
我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,
计算机虽然很强大,但从某种角度上看又很傻,除非你明确的告诉它,
1是数字,“汉”是文字,否则它是分不清1和‘汉’的区别的,因此,
在每个编程语言里都会有一个叫数据类型的东东,
其实就是对常用的各种数据类型进行了明确的划分,
你想让计算机进行数值运算,你就传数字给它,
你想让他处理文字,就传字符串类型给他。
Python中常用的数据类型有多种,今天我们暂只讲3种, 数字、字符串、布尔类型

# int 整数

# 1 2,3,4,5 1000 100000

# 用途:运算或者计算 + - * / % **。。。。

# str 字符串

# python中凡是用引号引起来的内容就是字符串数据类型。
# 单引号,双引号,三引号都可以。
ret = "fdsfa太白金星"

# bool 布尔值。
True False 用于判断条件,逻辑语句真假。


13,用户交互input。
why:
网页,app 输入你的用户名,密码。
what: input,得到一些重要的数据与程序交互。
how:
input('提示语') ---> str类型
where:
程序需要你的一些重要信息 账号,密码等。


14,流程控制语句if.
why:
生活中各种让你选择的例子,回家,掷骰子,等等。
what: if。
how:5种。

if条件语句的基本结构?

 

if 2>1print("继续下一步操作")
if 2>1:
    print("正确")
else:
    print("错误")
复制代码
score = 67
if score < 60:
    print("不及格")
elif score < 70:
    print("及格")
elif score < 80:
    print("良好")
elif score >= 90:
    print("优秀")
复制代码
复制代码
score = 90
if score < 60:
    print("不及格")
elif score < 70:
    print("及格")
elif score < 80:
    print("良好")
else:
    print("优秀")
复制代码
score=99
if score>60:
    if score>90:
        print("优秀")
    else:
        print("及格")
posted @   Sunzz  阅读(118)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示