初始python

1什么是程序

计算机程序是一组执行某种动作的的指令。和那些电路、芯片、显卡、硬盘等不同,它不是计算机本身可以触摸的部分,而是隐藏在背后运行在硬件上面的东西。程序就是一系列告诉没有知觉的硬件该做什么事情的命令。软件就是这些程序的集合。

2.用什么来构造程序呢?

和人类之间沟通一样,计算机之间也是通过语言进行沟通的。这里所说的语言就是编程语言(编写程序的语言),每一种编程语言就是一种和计算机打交道的方法。就如英语,德语,法语,中文等。每一种编程语言就像各个国家的国语一样会有名字。有些采用首字母,有些采用简写,甚至还有一些采用电视剧命名,如python语言。python语言采用著名的英剧《蒙提.派森的飞行马戏团》。

3.python的由来

python是1989年圣诞节期间,Guido von Rossum为了打发无聊的时间而进行编写的。目的是开发一个全新的脚本语言作为ABC语言的一种继承。

4.为什么选择python语言?

1.python是广泛认同最容易学习的语言,它为了让程序员把精力都放在逻辑分析上面而不像c和c++那样拥有太多复杂的语法而使开发效率下降。

2.python拥有大量的库和函数,使得开发时大大的为程序员提供了方便。

3.python在图像处理,数据挖掘,爬虫,人工智能方面的应该都极为广泛,由于其开发时语法简单,可以快速实现算法。不用过多的纠结语法。

下图是python近几年的运用程度。

并且python在许多巨头企业都有运用,比如Google,Facebook,NASA,知乎,腾讯,豆瓣,百度等几乎99%的中大型互联网公司都有其运用,再加上其强大的跨平台能力,也被称为胶水语言,在后台优化处理上有着自己的优势。

5.python的劣势

python是出了名的慢,相对其他语言虽然开发效率高但是也是出了名的慢,这一点将来python精通以后可以学习c和c++将其嵌套在里面,达到提速的效果,一旦开发成功以后,再将其嵌套。那就是件完美的作品。不仅开发效率高,并且速度也不慢。

6、python的种类

同样是python也会有各种各样的。

cpython:将源码转换为c的字节码,然后运行在python的虚拟机(python内置的一种程序)上面。这一类是python的官方版本也是应该最为广泛的一类。

Jpython:将源码转换为Java的字节码,然后在JVM上面运行。

pypy这是python的一个特殊类。它是边写边编译字节码的虽然比其语言看起来编译过程要慢。但是当它编写完以后就直接是字节码,可以之间翻译为机器码,不用再象其它语言那样把源代码再转换为字节码。速度是最接近cpython的。因为c转换为机器码是除了汇编语言以外最快的。

7.安装pytho环境

1、window环境

输入网址www,python.org,进入官网页面

点击上图的Downloads

选择windows里面的版本确定以后点击download即可进行下载。

注意选择自己电脑适合的版本如系统和位数

注意:如果你下载的版本是3.5在安装的时候,第一个界面的最下面会有提示问你是否安装环境变量这个一定要打勾

如果你是2.7版本就要到计算机的属性里面的高级设置里去改环境变量

把上图中的path里面的末尾添加c:\python27然后保存。这样才能在终端使用2.7和3.5版本,由于系统默认的是2.7并且3.5在默认安装环境变量以后再path里面是不显示的,所以如果你要用3.5就把2.7的环境变量删除以后点击保存就可以用3.5了。同理添加就可以用2.7了。也可以直接在终端直接执行3.5。

2.Linux环境自带python这也是python受欢迎的一个原因。

8.python入门

让我们一起来吟唱那句古老而神秘的咒语hello world

1.print ('hello world')

在c:\homework\day_1.py文件里面保存这个代码然后在python解释器里面直接执行含有这个代码的.py文件即可

如果不想输入上述的路径,想要直接实现则需要在文件的开头加上

1.#!/usr/bin/env python
2.
3.print('hello world')

这样直接执行./day_1.py文件即可(针对Linux系统,windows无效)

9.关于编码问题

由于计算机是由美国人发明的所以编码问题最开发只是采用的ascii码的方式进行编译即所有的字母,字符,数字采用8位即可。总共是2**8个表示形式

后来计算机火遍全球,所以各个国家的语言加入进来显然2的8次方中表示方法已近不够用,最后延伸出来新的编码规矩就是Unicode。

但是Unicode由于最少站两个字节即16位来存数据明显有过多的浪费,明明一个字节的结果用了两个。对内存产生的不好的影响,所以经过改进产生的utf-8和GBK两个优化的新编码规矩。

python便是采用utf-8这种规格。

utf-8采用ascii码里面的字符是一个字节,欧洲字符是两个字节,东亚的字符是三个字节

由于python2.7默认的是ascii编码所以一下代码无法执行

1.#!/usr/bin/env python
2.
3.print('你好 世界')

但是如果在前面编写代码之前告诉python解释器你要用什么规矩来编码就可以实现

1.#!/usr/bin/env python
2.#-*- coding: utf-8 -*-
3.print('你好 世界')

由于python3.5默认的是utf-8这种方式所以就不用改直接输出汉子即可

注意:#表示被注释掉的行 不参与代码的执行

10.python有很多的模块,主要分成三组

1组:内部自身提供的模块

2组:业内开源的模块

3组:程序员自己开发的模块

比如画图的代码

1.#!/usr/bin/env python
2.#-*- coding: utf-8 -*-
3.import turtle
4.turtle.pen()
5.turtle.forward()

  

导入的是内部的turtle模块 让python帮你在计算机上面简单的进行画图forward()和left()都是模块里面的函数

11.什么是pyc文件

python每次执行完.py文件以后都会在计算机上面生成一个.pyc文件。这个就是编译好的字节码文件。以后电脑执行这个.py文件的时候就先去找.pyc文件。直接让其翻译成机器码,不会再重复先翻译成.pyc文件,让开发速度提高减少cup的工作负担。

12.什么是变量

在编程语言中有字符串和数字和布尔值True,False(注意这两个值都是必须要大写的)True代表真值,False代表假值

name='liu yun xiang'#字符串用引号把内容括起来
pwd=1231231231#数字

这些字符串和数字往往都要赋值给一个变量

1.#!/usr/bin/env python
2.#-*- coding: utf-8 -*- 1.name='xiang' 2.pwd=123

上述中name和pwd都为变量

变量是用来指代内存里面某个地址保存的内容。

变量只能由数字,下划线,字母组成。并且数字不能在第一个。python里面的关键字是不能作为变量的,例如import、if、and、or、等

13.变量在内存里面的表现形式

1.#!/usr/bin/env python
2.#-*- coding: utf-8 -*-
3.name1='wupeiqi'

1.#!/usr/bin/env python
2.#-*- coding: utf-8 -*- 3.name1='wupiqi' 4.name2='alex'

1.#!/usr/bin/env python
2.#-*- coding: utf-8 -*- 3.name1='wupeiqi 4.name2=name1 '

 注意:name2原来的值alex当name2变为name1以后 alex这个值就会被python解释器处理掉 不一定在内存里面了

14.输入程序

1.#!/usr/bin/env python
2.#-*- coding: utf-8 -*-
3.name=input('输入的内容')
4.print(name)

在执行程序的时候在输入内容的地方输入代码,代码的值就会赋给name,最后再输出name。且name为字符串

1.#!/usr/bin/env python
2.#-*- coding: utf-8 -*-
3.name=int(input('输入的内容'))
3.print(name)

同上只不过输出的不 再是字符串,而是整形。

15.if语句的应用

if语句在python里面作为常用语句,其功能就是判断是否满足条件,如果满足就执行 如果不满足就执行else:

1.name='xiang'
2.if name=='xiang':
print(123)
3.else:
print(456)

如果满足条件name等于字符串'xiang'则输出123,否则输出456

当有多个条件的时候:

1.name='xiang'
2.if name=='xiang':
print(123)
3.elif name=='liu':
print(3123)
4.elif name=='yun':
print(999)
5.else:
print(456)

满足if或者elif是执行其中代码,如果都不满足执行else:

注意:if后面的条件可以任意变化,以满足代码要求

16.while循环语句

除了if以外还有一个常用的循环,while循环,里面有continue和break两种

1.continue(退出当前循环)

1.x=0#输入一个变量x并且把它赋值为0。
2.while<10:#进入while<10的循环。
3.if x==7#进入条件语句判断变量是否为7,如果等于7 由于continue退出当前循环。
continue
4.print(x)#打印x
5.x=x+1#x+1以后再赋值给x

注意while循环无法做到自己增加变量值如果不用x+=1改变变量值就好进入一个死循环不停的打印0.当我们增加了if...continue这个条件以后当x变量增加到7的时候。退出当前循环,由于不执行下面的代码print(i)和x=x+1.所以x一直是7,当x为7再次进入while里面的时候又执行了continue。所以就产生了死循环。打印的结果为0 1 2 3 4 5 6.

如果想让while继续循环就需要改动一下

1.x=0#输入一个变量x并且把它赋值为0。
2.while<10:#进入while<10的循环。
3.if x==7#进入条件语句判断变量是否为7,如果等于7 由于continue退出当前循环。
x+=1
continue
4.print(x)#打印x
5.x=x+1#x+1以后再赋值给x

2.break退出整个循环

1.x=0#输入一个变量x并且把它赋值为0。
2.while<10:#进入while<10的循环。
3.if x==7#进入条件语句判断变量是否为7,如果等于7 由于continue退出当前循环。
break#永远退出该循环
4.print(x)#打印x
5.x=x+1#x+1以后再赋值给x

如果在while循环的时候遇到了break。循环就直接跳出,并且不会再进入该循环

注意:while后面跟的条件为真的时候才会进入循环,为假永远都不会进入.

17.python的终端执行代码

注意python和执行路径之间有一个空格。

python学习心得第一章的更多相关文章

  1. python学习心得第二章

    python基础 1.关于python编码的问题. python的编码现在主要是两种版本python2.7和python3.5 python2.7默认的是ascii码进行编译,我们可以采用 # -*- ...

  2. Python 学习系列----第一章:基础知识

    1.1 常量-----不能改变它的值 1.2 数 在Python 中数可以分为整数.浮点数和复数. PS:在Python中不用区分'long int'类型.默认的整数类型可以任意长.(译者注:长度应该 ...

  3. Python学习笔记 -- 第一章

    本笔记参考廖雪峰的Python教程 简介 Python是一种计算机高级程序设计语言. 用Python可以做什么? 可以做日常任务,比如自动备份你的MP3:可以做网站,很多著名的网站包括YouTube就 ...

  4. python学习心得第五章

    python学习心得第五章 1.冒泡排序: 冒泡是一种基础的算法,通过这算法可以将一堆值进行有效的排列,可以是从大到小,可以从小到大,条件是任意给出的. 冒泡的原理: 将需要比较的数(n个)有序的两个 ...

  5. python学习心得第四章

     python 学习心得第四章 1.lambda表达式 1:什么是lambda表达式 为了简化简单函数的代码,选择使用lambda表达式 上面两个函数的表达式虽然不一样,但是本质是一样的,并且lamb ...

  6. python学习心得第三章

    python学习心得第三章 1.三元运算 变量=值1 if 条件 else 值2 由图如果条件成立则赋值1给变量,如果条件不成立则赋值2给变量. 2.数据类型 集合:set() class set(o ...

  7. Java学习记录第一章

    学习Java第一章的记录,这一章主要记录的是Java的最基础部分的了解知识,了解Java的特性和开发环境还有Java语言的优缺点. 计算机语言的发展大概过程:机器语言--->汇编语言---> ...

  8. 路飞学城-Python爬虫集训-第一章

    自学Python的时候看了不少老男孩的视频,一直欠老男孩一个会员,现在99元爬虫集训果断参与. 非常喜欢Alex和武Sir的课,技术能力超强,当然讲着讲着就开起车来也说明他俩开车的技术也超级强! 以上 ...

  9. [HeadFirst-JSPServlet学习笔记][第一章:前言与概述]

    第一章 前言与概述 web服务器做什么? 答:接收客户请求,然后向客户返回结果 web客户做什么? 答:此处客户指浏览器,web客户允许用户请求服务器上的某个资源,并向用户展现请求的结果. html ...

随机推荐

  1. Codeforces Round #383 (Div. 2) D. Arpa's weak amphitheater and Mehrdad's valuable Hoses(分组背包+dsu)

    D. Arpa's weak amphitheater and Mehrdad's valuable Hoses Problem Description: Mehrdad wants to invit ...

  2. Supervisor 安装

    在linux或者unix操作系统中,守护进程(Daemon)是一种运行在后台的特殊进程,它独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件.由于在linux中,每个系统与用户进行交流的界 ...

  3. 个人JS零碎知识整理

    1."DOM2级事件"规范要求的事件流包括三个阶段:事件捕获阶段.处于目标阶段.事件冒泡阶段 2.isNaN()       数字.空串.空格 返回false 变量是数字时返回fa ...

  4. selenium + phantomjs 爬取落网音乐

    题记: 作为一个业余程序猿,最大的爱好就是电影和音乐了,听音乐当然要来点有档次的.落网的音乐的逼格有点高,一听听了10年.学习python一久了,于是想用python技术把落网的音乐爬下来随便听. 目 ...

  5. C++ 快排

    // 进行一轮快排并返回当前的中间数 int getMiddle( int* arr, int low, int high ) { auto swaparr = [&]( int i, int ...

  6. Netty是什么?

    Netty是什么? 本质:JBoss做的一个Jar包 目的:快速开发高性能.高可靠性的网络服务器和客户端程序 优点:提供异步的.事件驱动的网络应用程序框架和工具 通俗的说:一个好使的处理Socket的 ...

  7. Linux下的shell编程(三)BY 四喜三顺

    正则表达式:-------------------------------------------------------------------------------------------^   ...

  8. sencha touch百度地图扩展

    扩展代码如下: Ext.define('ux.BMap', { alternateClassName: 'bMap', extend: 'Ext.Container', xtype: 'bMap', ...

  9. php类型的相关函数,运算符,条件判断,循环

    类型的相关函数 函数的原型  :函数返回值类型 函数名(参数1类型 参数1,参数2类型 参数2--) 1, 任何一个函数,都要考虑它是否有返回值以及该返回值的类型,如果该函数没有返回值,就用void来 ...

  10. 习课的redis配置记录

    <!-- redis begin --> <dependency> <groupId>redis.clients</groupId> <artif ...