前提:简述CPU 内存 硬盘 操作系统 应用程序
CPU:计算机的运算核心和控制核心,好像人类的”大脑“
内存:负责数据与CPU直接数据交流处理,将临时数据和应用程序加载到内存,然后在交由CPU处理。
造价高,断电即消失
硬盘:磁盘,长久的出存储数据:文件,应用程序等数据。断电不消失。
文件处理速速:磁盘<内存<CPU
操作系统:控制调度,硬件与软件资源的计算机程序,他是计算机中最大的软件。

第一章:python历史以及入门
龟叔
1,python的出生与应用。
python的宗旨:优美,清晰,简单。
2008:
python2.6
python3.0
源码上的区别:
pyhton2x:源码不规范。源码重复率较高。源码冗余。
python3x:源码识重新整合,符合优美清晰简单的原则。
2,python的语言分类。
解释型:将代码一行一行的解释成二进制,然后逐行执行。
缺点:执行效率低。
优点:开发效率高,可以跨平台。
代表语言:python。
编译型:将代码全部一次性编译成二进制,然后在执行。
缺点:开发效率低,不能跨平台。
优点:执行效率高。
代表语言:C。
3,python的优缺点。
优点:
1,优美清新简单,入门容易,如果深入研究,可以写出非常非常复杂的程序。
2,开发效率高。
3,高级语言。
4,可移植性。
5,可嵌入性。
6,可拓展性。

缺点:
1,运行速度慢。
2,源码不能加密。
3,由于有GIL锁的存在,不能利用多线程。
4,python的种类。
1,Cpython:官方推荐,是由C语言编写的。
2,Ipython:交互式解释器,在Cpython基础上增强了交互功能。
3,Jpython:可以在Java平台上运行的,代码可以转化成Java的字节码。
4,IronPython:可以在.net平台上运行,代码可以转化成.net的字节吗。
5,pypy:利用了JIT技术,实现动态编译,执行速度非常快。
5,python解释器安装。
详见博客:http://www.cnblogs.com/jin-xin/articles/7459977.html
6,运行第一个python代码。
mac: 进入终端:输入python 回车
windows: 功能键 + R 弹出一个窗口 输入cmd 回车 输入python 回车
如果:进入了python 解释器 安装成功,并且将python的路径成功添加到环境变量中。
如果:报错
1,python解释器没有安装成功,你要重新安装。
2,没有添加到环境变量,手动将python解释器的路径添加到环境变量。

环境变量:在操作系统中,环境添加一些必要的参数,文件夹的位置,重要的路径等等。
可能遇到的问题:
1,文件后缀名.py。
2,标点符号一定要是英文。
3,路径的问题。
补充知识点:Python2x与python3x区别。
python3x:编码方式默认是utf-8,可以支持中文,英文。
python2x:编码方式默认是ASCII,只包含英文字母,数字,特殊字符如果想显示中文:在首行加上
# -*- encoding:utf-8 -*-
7,变量。
why what how where
"""
print(1+2+43+5+56)
print((1+2+43+5+56)*2/3)
print((((1+2+43+5+56)*2/3)+100)/5)
"""
x = 1 + 2 + 43 + 5 + 56
y = x * 2 / 3
z = (y + 100)/5
print(z)
why:操作更方便,简单。

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,变量要具有可描述性。
name = '太白金星'
name = 18 这样写就不合理
6,变量不能过长。
fdjksalfjsadlkfjdsa = 11
官方推荐:
#驼峰体

AgeOfOldboy = 56

NumberOfStudents = 80

#下划线

age_of_oldboy = 56

num_of_stu = 80
where: 以后程序中,会大量的用到变量,他就是暂时存储一些数据。
l1 = [1,2,3,4,4,5,6,7,8,9,0,]
8,常量。
why:生活中不能改变的,身份证号,出生年月等等,代码中也有一些量是不想让别人该改变的。
what:常量,在设计之初,就不想让别人改变的量。
how:python中原本没有常量的概念,但是为了与其他语言保持一致性,约定俗成:全部大写的变量为常量。
name = '太白金星'
NAME = '太白金星'
where:
ID = 123243211
BIR_OF_CHINA = 19491001
9,注释。
why:初高中文言文,有些晦涩难懂的成语或者典故,会在前面加上序号,本页最下面给解释说明。python程序中也有这样的注释。
what:对python程序的解释说明。
how:
单行注释: 行首:#
多行注释:"""被注释内容""" 或者 '''被注释内容'''
注释:不宜多,宜精。
where:
1,复杂的代码,需要注释。
2,函数,类,整个文件,注释说明。
10,基础数据类型初识。
每个编程语言都会对数据进行细致的划分,这样才能对划分的数据比如数字1,字符串 '太白', [1,3,4] 才能各司其职。
简单的讲讲
整数int
字符串str
布尔值bool
int:1,2,100,2000.....
用途:用于计算,+ - * / 等等
在32位机器上,整数的位数为32位,取值范围为-2**31次方~2**31次方-1,即-2147483648~2147483647

在64位系统上,整数的位数为64位,取值范围为-2**63次方~2**63次方-1,即-9223372036854775808~9223372036854775807
float 浮点型 1.23,复数,

str:在Python中凡事被引号引起来的就是字符串
单引号,双引号,三个单引号,或者三个双引号。
有时候单双引号需要配合使用
msg = "My name is Alex , I'm 22 years old!"

msg = '''
今天我想写首小诗,
歌颂我的同桌,
你看他那乌黑的短发,
好像一只炸毛鸡。
'''
换行

只能够 + *(字符串与数字相乘)
字符串的拼接:

s1 = 'alex'
s2 = 'SB'
s3 = s1 + s2
print(s3)
字符串可以与数字相乘:
bool: True False
用于逻辑判断
1 > 2?

type方法:用于判断该数据是什么数据类型。
s1 = 'alex'
s2 = 'SB'
s3 = s1 + s2
#print(s3)

s4 = '坚强'
#print(s4*8)

#print(1 > 2)
'''
s2 = 'True'
s3 = True
#print(s2,s3)
#print(type(s2),type(s3))

11,用户交互input。
why:在程序中,有时需要大家输入一些类似于账号密码的关键信息
what:用户交互input。
how:
input('提示语') 等待用户输入,输入完毕之后,回车

!!input出来的都是字符串数据类型

where:
当你的程序需要用户输入一些信息的时候,即是将一些重要信息与程序交互,这时候你要想到用户交互input。
12,格式化输出。
why:
做如下练习:
用户输入姓名,年龄,工作,爱好
------------ info of 太白金星 -----------
Name : 太白金星
Age : 23
job : Teacher
Hobbie: girl
------------- end -----------------
what:格式化输出 % s d f。(% 占位符 s 字符串,f:浮点型,d:整数)
how:
name = input('请输入姓名:')
age = input('请输入年龄:')
job = input('请输入工作:')
hobby = input('请输入爱好:')

msg = """
------------ info of %s -----------
Name : %s
Age : %s
job : %s
Hobbie: %s
------------- end -----------------
""" % (name,name,age,job,hobby) #按照顺序依次替换上面的四个位置
print(msg)

# str int之间转化

# int ---> str
i = 100
s1 = str(i)
#print(i,type(i))
#print(s1,type(s1))
# str ---> int # 字符串必须全部由数字组成才能转化成数字
s1 = '1000'
i = int(s1)
# int ---> str
#print(s1,type(s1))
#print(i,type(i))

补充注意事项:

# 如果在格式化输出中只想单纯的表示%,那么要写上%%。
msg = '我叫%s,今年%s岁,学习进度2%%' % ('王二狗','18') #不换行
print(msg)

where:
如果你想要用字符串制作一个模板,让其中某些位置的元素是动态输入的时候,一定要想到字符串拼接或者格式化输出。
13,流程控制语句之if。

why:满足不同的条件,走相应的道路。
what:流程控制语句:if。
how:
1,基本语句。
if 条件:
代码块(这里前面有4个空格)
2,5种方式(甚至更多)。
1,单独的if。
2,if else
3,if elif ....
4,if elif ..... else
5,if 嵌套 #不要太多层,5层以上就会影响程序效率
注意标点符号: 一定要是英文。:
注意四个空格缩进,代码块。
where:
程序中会大量的用到,就是条件(情况)出现分叉,针对不同的条件(情况),执行不同的结果,执行不同的代码块。
14,流程控制语句之while。
why:生活中 吃饭睡觉工作,听歌(单曲循环,列表循环)大气循环。
what:python提供的循环功能:while.
how:
1,while 循环基本语句。
while 条件:
循环体
2,while循环如何终止。
2.1 改变条件。
2.2 break。
2.3 调用系统命令:quit().(不建议大家使用)

3,while循环的关键字:break,continue。

4,固定搭配:while else。
where:
在以后的程序或者工作中,如果遇到重新验证,重复输入,或者没达到正确结果之前一直反复执行之前的操作的时候,此时往往要想到while.

感谢,太白金星。

1_Python历史及入门的更多相关文章

  1. javascript的历史和入门

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. 【视频教程】JEECG 入门视频教程大全+历史版本号代码下载

    <JEECG_v3 入门视频> PPT介绍下载:http://share.csdn.net/slides/4208 ************************************ ...

  3. 1.搜索引擎的历史,搜索引擎起步,发展,繁荣,搜索引擎的原理,搜索技术用途,信息检索过程,倒排索引,什么是Lucene,Lucene快速入门

     一: 1  搜索引擎的历史 萌芽:Archie.Gopher Archie:搜索FTP服务器上的文件 Gopher:索引网页 2  起步:Robot(网络机器人)的出现与spider(网络爬虫) ...

  4. Erlang cowboy 入门参考之现代Web的发展历史

    Erlang cowboy 入门参考之现代Web发展史 原文: http://ninenines.eu/docs/en/cowboy/1.0/guide/modern_web/ 让我回顾一下web技术 ...

  5. Linux入门(历史与现状)

    Linux 入门之 历史与现状   Linux是一个计算机的操作系统,与windows类似,是一款系统软件.操作系统首先是一个计算机程序,使用计算机语言开发,比如C语言.VC语言.是计算机硬件和应用软 ...

  6. linux入门教程(一) 关于linux的历史

    很多关于linux的书籍在前面章节中写了一大堆东西来介绍linux,可惜读者看了好久也没有正式开始进入linux的世界,这样反而导致了他们对linux失去了一些兴趣,而把厚厚的一本书丢掉. Linux ...

  7. GIT入门笔记(8)-- 查看历史提交记录/根据版本号回到过去或未来

    在Git中,用HEAD表示当前版本,也就是最新的提交版本, 上一个版本就是HEAD^, 上上一个版本就是HEAD^^, 往上100个版本写100个^比较容易数不过来,所以写成HEAD~100. Git ...

  8. HTTP从入门到入土(2)——HTTP协议发展历史

    HTTP协议的发展历史 HTTP/0.9 0.9版本是第一个定稿的HTTP版本,相对较为简陋.它有以下特点: 只有一个命令GET 没有header等描述数据的信息 服务器发送完毕,就关闭TCP连接 注 ...

  9. 【入门】广电行业DNS、DHCP解决方案详解(一)——历史及现状篇

    广电发展历史 单项网络 双向网络 智能网络 广电网络现状 广电网络典型特征 接入技术混杂 承载业务多样化 业务终端错综复杂 其他 网络现状模型 总结 广电发展历史 广电就是广播电视,广电发展可以分为三 ...

随机推荐

  1. 学习笔记CB008:词义消歧、有监督、无监督、语义角色标注、信息检索、TF-IDF、隐含语义索引模型

    词义消歧,句子.篇章语义理解基础,必须解决.语言都有大量多种含义词汇.词义消歧,可通过机器学习方法解决.词义消歧有监督机器学习分类算法,判断词义所属分类.词义消歧无监督机器学习聚类算法,把词义聚成多类 ...

  2. 学习笔记TF066:TensorFlow移动端应用,iOS、Android系统实践

    TensorFlow对Android.iOS.树莓派都提供移动端支持. 移动端应用原理.移动端.嵌入式设备应用深度学习方式,一模型运行在云端服务器,向服务器发送请求,接收服务器响应:二在本地运行模型, ...

  3. maven多模块项目构建

    描述 一个大的企业级项目通常跨越了数十万行代码,牵涉了数十或数百软件人员的努力.如果开发者在同一个项目下开   发,那么项目的管理.构建将会变得很难控制.因此设计人员会将项目划分为多个模块,多个模块独 ...

  4. influxdb 全家桶运行

    一个简单的demo,集成了telegraf,influxdb,chronograf,kapacitor,nginx,一张来自官方的参考图 组件集成图 环境准备 使用docker-compose doc ...

  5. celery+Rabbit MQ实战记录

    基于以前的一篇文章,celery+Rabbit MQ的安装和使用, 本文更加详细的介绍如何安装和使用celey, Rabbit MQ. 并记录在使用celery时遇到的一些问题. 1.安装 Rabbi ...

  6. Centos6.9部署Gitlab-11.9.8并汉化

    Git 是一种分布式的代码版本管理系统,git在工作时可以不用时刻依赖后台服务器,在本地电脑上就可以管理版本控制,但是在需要协同开发时就必须要使用后台服务器了,目前互联网上有github,码云这样的远 ...

  7. linux Table is marked as crashed and should be repaired

    linux Table is marked as crashed and should be repaired 2014-07-28 10:34 1282人阅读 评论(0) 收藏 举报  分类: da ...

  8. 第一次使用mybatis

    程序使用mybatis的步骤: 1.配置mybatis 涉及到的配置文件有conf.xml和与实体类对应的映射配置文件 (1) conf.xml:配置数据库信息和需要加载的映射文件 <confi ...

  9. 二叉树遍历(flist)(二叉树,已知中序层序,求先序)

    问题 C: 二叉树遍历(flist) 时间限制: 1 Sec  内存限制: 128 MB提交: 76  解决: 53[提交][状态][讨论版][命题人:quanxing][Edit] [TestDat ...

  10. 系统右键菜单(级联菜单)资料--cascading menus

    通过RegistryKey 简单的实现单级菜单 http://www.cnblogs.com/sjcatsoft/archive/2009/02/25/1398203.html 通过subcomman ...