• python入门


    一、python简介

    1.1 Python的出生

    我们想要快速学习python就需要知道点python的历史.python是哪年创建的 ?python可以做什么?

    python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆

    (中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,

    作为ABC语言的一种继承。

    龟叔:2005年加入谷歌至2012年,2013年加入Dropbox直到现在,依然掌握着Python发展的核心方向,

    被称为仁慈的独裁者)。

    1.2 Python的今世

    据当前来看python在TIORB排行榜中,位居第三.Python崇尚优美、清晰、简单,是一个优秀并广泛使用的语言.

    Python整体呈上升趋势,反映出Python应用越来越广泛并且也逐渐得到业内的认可!

    1.2.1 Python的主要应用领域:

    云计算: 云计算最火的语言, 典型应用OpenStack

    WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。典型WEB框架有Django

    科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas

    系统运维: 运维人员必备语言

    爬虫:通过代码来模拟人进行页面访问,对信息进行批量的获取

    金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测'

    图形GUI: PyQT, WxPython,TkInter

    1.2.2 Python在哪些公司被使用:

    谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬虫、

    Google广告等项目都在大量使用Python开发

    CIA: 美国中情局网站就是用Python开发的

    NASA: 美国航天局(NASA)大量使用Python进行数据分析和运算

    YouTube:世界上最大的视频网站YouTube就是用Python开发的

    Dropbox:美国最大的在线云存储网站,全部用Python实现,每天网站处理10亿个文件的上传和下载

    Instagram:美国最大的图片分享社交网站,每天超过3千万张照片被分享,全部用python开发

    Facebook:大量的基础库均通过Python实现的

    Redhat: 世界上最流行的Linux发行版本中的yum包管理工具就是用python开发的

    豆瓣: 公司几乎所有的业务均是通过Python开发的

    知乎: 国内最大的问答社区,通过Python开发(国外Quora)

    春雨医生:国内知名的在线医疗网站是用Python开发的

    除上面之外,还有搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝 、土豆、新浪、

    果壳等公司都在使用Python完成各种各样的任务。

    1.3 Python是什么编程语言:

    编程语言主要从以下几个角度为进行分类,编译型和解释型、静态语言和动态语言、

    强类型定义语言和弱类型定义语言,每个分类代表什么意思呢,我们一起来看一下。

    1.3.1 编译型与解释型

    编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时

    计算机可以直接以机器语言来运行此程序,速度很快;

    解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,

    所以运行速度是不如编译后的程序运行的快的.

    这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)

    1.3.2 动态语言和静态语言

    通常我们所说的动态语言、静态语言是指动态类型语言和静态类型语言。

    (1)动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,

    在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,

    在内部将数据类型记录下来。Python和Ruby就是一种典型的动态类型语言,其他的各种脚本语言如

    VBScript也多少属于动态类型语言。

    (2)静态类型语言:静态类型语言与动态类型语言刚好相反,它的数据类型是在编译其间检查的,

    也就是说在写程序时要声明所有变量的数据类型,C/C++是静态类型语言的典型代表,

    其他的静态类型语言还有C#、JAVA等。

    1.3.3 强类型定义语言和弱类型定义语言

    (1)强类型定义语言:强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,

    如果不经过强制转换,那么它就永远是这个数据类型了。

    举个例子:如果你定义了一个整型变量a,那么程序根本不可能将a当作字符串类型处理。强类型定义语言是类型安全的语言。

    (2)弱类型定义语言:数据类型可以被忽略的语言。它与强类型定义语言相反,

    一个变量可以赋不同数据类型的值。

    强类型定义语言在速度上可能略逊色于弱类型定义语言,但是强类型定义语言带来的严谨性能够有效的避

    免许多错误。另外,“这门语言是不是动态语言”与“这门语言是否类型安全”之间是完全没有联系的!

    例如:Python是动态语言,是强类型定义语言(类型安全的语言); VBScript是动态语言,是弱类型定义语

    言(类型不安全的语言); JAVA是静态语言,是强类型定义语言(类型安全的语言)。

    通过上面这些介绍,我们可以得出. python是一门动态解释性的弱类型定义语言。

    看了这么多内容,感觉好厉害已近迫不及待的想要动手去试试了,我不得不说,还是需要在稍等一下.等什么.

    等一个武功秘籍,我们的秘籍就是可以用来学习python的一个软件.

    二、环境安装

    1.1 Python环境安装

    1.1.1 打开官网:http://www.python.org,点击Downloads下载,如下图

    1.1.2下拉页面,选择对应版本:Python3.6.3,如下图

    向下查找,找到Python 3.6.3

    1.1.3 根据系统选择对应的安装包,如下图

    根据当前系统的选择对用的,红色的是windows32位,绿色的是windows64位

    1.1.4下载完成,如下图

    下载完成后找到下载的目录,然后用鼠标左键双击

    1.1.5 安装

    1.1.6 执行下一步

    1.1.7 勾选安装

    1.1.8 安装进度

    1.1.9 安装成功

    好了,我们已经成功的安装了python解释器了.为了开发方便.我们还需要安装一个神器Pycharm

    2.1 Pytcharm安装

    2.1.1 下载Pycahrm

    首先要下载Pycharm这个软件,官网的下载地址是: http://www.jetbrains.com/pycharm/download/#section=windows

    选择左边的点击进行下载,左边的是专业版右边是社区版

    2.1.2 下载中

    出现这个页面就是正在下载,稍微喝杯茶等等

    2.1.3 找到文件

    2.1.4 安装

    选择Next 点击

    2.1.5 选择要安装到那个目录

    2.1.6 选择配置

    我是64位机器,我选择了64,如果是32的就选择32 [不管64还是32剩下的都选择]

    2.1.7 点击安装

    2.1.8 安装中

    2.1.9 安装成功

    出现这个界面的直接点击Finish关闭就可以了. 我们现在切换到桌面

    2.1.10 使用Pycharm

    找到这个图标然后双击

    2.1.11 首次使用Pychram

    2.1.12 用户许可证

    2.1.13 激活Pycharm

    激活详情http://idea.lanyus.com/页面

    点击选择的内容生成激活码,然后将激活码复制到code选项中

    2.1.14 个性化设置

    这个直接关闭就可以了

    2.1.15 启动成功

    如果你的激活码没问题的话,会在个性化,主题设置完毕之后,经过短暂的加载(加载速度取决于电脑性能)进入如图页面,到这一步,PyCharm安装完成了

    2.1.16 创建文件

    2.1.17 PyCharm选择解释器

    File -- Settings -- Project -- Project Interpreter,这里会显示当前系统默认的解释器,如果要添加别的解释器,点击工具图标,Add local -- Existing environment,点击三点图标,在打开的本地文件目录中选择解释器文件的.exe文件。就行了,如果你没有选择, PyCharm会自动选择当前环境默认的解释器

    2.1.18 PyCharm创建py文件

    鼠标放到大纲然后右键鼠标,出现一个New然后鼠标向右滑动选择python file点击左键

    直接写文件的名字就可以了,写完后回车就搞定了.

    2.1 输出

    咱们直接在这里边写东西 然后右键鼠标找到run左键点击一下,这个Python就输出出来了

    print() 括号里面的内容就是要输出的内容,如果是文字和字母需要用英文的引号引起来,数字直接写就可以啦

    python2写法:      
         print  'hello world'
    
    python3写法:    
         print('hello world')
    我们学习的python3版本,python2版本是什么样也要知道
    

    2.2 变量

    下面咱们来说一下变量,在接触变量之前,我先给大家演示一效果:

    print(1+2+3+4+5)
    print(((1+2+3+4+5))*5+6)
    print((((1+2+3+4+5))*5+6)*7)
    

    上面只是举个例子,是不是很麻烦,那有什么解决方法呢?咱们是不是可以用一个东西代替一下他的中间结果呢?

    x = 1+2+3+4+5
    y = x*5 + 6  
    z = y*7      
    print(z)  
    

    以上这个知识点就是变量
    变量就是将中间的结果暂存到内存,以便后续程序调用

    这个知识点用在哪呢
    变量在python中经常使用,比如上面的例子,再比如我设置一个变量
    name = ‘alex’ 那么name指向的就是‘alex’ 无论我在哪里调用name,他的结果就是alex,可以暂存一些临时数据。

    name  =  'Meet'
    # 这样的形式就是在定义一个变量
    name 是一个变量名
    =    是一个赋值操作  赋值就是将值交给name
    'Meet'  是一个值
    

    这个知识点该如何用呢

    2.2.1 变量的定义规则

    变量名只能是 字母、数字或下划线的任意组合
    变量名的第一个字符不能是数字
    以下关键字不能声明为变量名
    
    ['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']
    
    变量名建议不使用拼音和中文
    变量的要具有意义
    变量名不要过长
    变量名要区分大小写
    变量名推荐写法:
    驼峰体     MeetTheGirl
    下划线     meet_the_girl
    

    2.2..2 变量的赋值

    name1  =  'Meet'
    name2  =  'Guo'
    

    此时的name1的值是Meet,name2的值是Guo,我们来看看下边的这个变量

    name1  =  'Meet'
    name2  =  name1
    

    现在的这个name1是Meet,name2是name1 也就是name2现在用的是name1的值,name2的值就是Meet

    我们在来看一下变量的小高级使用:

    2.2.3 变量的小高级

    age1 = 18
    age2 = age1
    age1 = 12
    age3 = age2
    print(age1,age2,age3)
    

    我们先来分析一下这个结果是怎样的,在运行看结果是否和你想的一样
    如果结果和你想的不一致,你需要注意了.咱们代码的运行是从上至下的执行

    age = 12
    age = 12 + 1
    age1 = age + 1
    print("我今年:",age1)
    name1 = 'alex'
    name2 = name1
    name1 = 'wusir'
    name3 = name2
    打印name1,name2name3分别对应的值是什么
    

    通过上边的小高级和练习我们可以得出一个宗旨,就是解释型语言是从上至下依次执行
    没执行一行,后面的将会把前面的覆盖

    2.3常量

    常量就是将变量名大写,尽量保持不更改的一种量
    这个常量有是干什么的呢 其实我生活中就有一些定死了的量
    比如生日,身份证
    咱们代码中,也应该有一些这样的东西,我从设计之初就是不让任何人改变的,所以这个东西就是常量。

    2.4注释

    在你写代码时,有些代码写的比较经典,或者过于复杂,你一眼看不出来,怎么办,比如在文言文中,有些出处或者偏难怪的文字,你是不是不理解?
    那么怎么办呢?是不是就得有简单说明。

    注释就是做这个的,我们来看一下怎么用

    # 这个就是给这一行进行注释,注释后的代码不会执行
       '''
       这种的是多行注释, 什么是多行注释啊,其实很简单就是咱们注释的内容可以
       进行换行
       '''
    

    看个示例:

    # print('hello') 这样就是对这个代码进行注释,并且这个代码不会执行
    
    '''
    print(1)
    print(2)
    这种就是多行注释,这样的注释也不会执行
    '''
    

    2.5 基础数据类型:

    什么是数据类型?

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

    int是整型;也就是我们从小就接触的数学中的整数,整型在计算机中运于计算和比较

    在32位机器上int的范围是: -231~231-1,即-2147483648~2147483647

    在64位机器上int的范围是: -263~263-1,即-9223372036854775808~9223372036854775807

    够你用了吧. 注意这些是整数.

    2.5.1 整型

    num1 = 2
    num2 = 3
    print(num1 + num2)
    # 结果: 5   
    # 整型就和我们学的数学一样可以进行加减乘除
    

    str是字符串;也就是我们从小就接触的中文,如果我们在程序中直接把中文写入,程序是不能分辨这是个什么鬼东西.所以我们要遵循一种规则

    让计算机能够识别,这个规则就是只要是用引号引起来就是字符串

    在Python中,凡是用引号引起来的,全是字符 .

    数字类型可以做运算,字符串可以吗??

    2.5.2 字符串

    字符串加法

    #字符串的拼接
    s1 = 'a' 
    s2 = 'bc'
    print(s1 + s2)
    

    字符串乘法

    str*int name = '坚强'
    print(name*8)
    

    字符 可以用单引号,双引号,或者三引号引起来,没有什么区别,只是一些特殊的格式需要不用的引号 比如:

    msg = "My name is Alex , I'm 22 years old!" 这个就需要单双引号配合。
    msg =
    
    """ 今天我想写首小诗,
    
    歌颂我的同桌,
    
    你看他那乌  的短发,
    
    好像  一只炸毛鸡。
    
    """
    想多  赋值一个字符  ,就需要三引号
    
    2.5.3 布尔值

    bool是布尔值;其实这个东西也是我们很小就接触的东西,俗话说人要<是非分明>.其实这个bool值就是我们所说的是非,布尔值中一共分为俩个状态

    True 就对应我们话中的是,白话来说就是真

    False 就对应我们话中的非,白话来说就是假

    例如我们想让计算机帮我们做一下俩个的大小比较

    print(3>7)
     
    结果: False
     
    print(7>3)
     
    结果: True
    

    2.6 输入

    你在一些网页和登QQ是不是常常遇到让你输入你的账户或者密码的情况,

    这样的情况在程序中会大量的存在,接下来我就给大家讲这个功能

    s = input('请输入你喜欢的东西')
    

    input就是固定格式,他是输入的意思 括号里边的内容是提示是给用户看的提示语句,用户输入的内容让input接收了然后赋值给了字符串s

    2.6.1 输入用户名

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    
    #将用户输入的内容赋值给name变量
    python2的写法
    name = raw_input("请输入用户名:")
    print name
    
    python3的写法
    name = input("请输入用户名:")
    print(name)
    

    需要注意的是input程序交互获取到的内容是字符串,我们看下面的简单示例:

    num = input('请输入数字:')
    print(num + 5)
    
    结果:
    请输入数字:6
    Traceback (most recent call last):
      File "D:/python_object/test.py", line 350, in <module>
        print(num + 5)
    TypeError: must be str, not int
    

    报错了,提示我们类型错误,数字和字符串是不能相加的.可是我们输入的明明是数字啊.其实我们看着输入的是
    数字但是input获取到的都是字符串

    这个知识点用在哪里?

    在工作中如果需要用户输入一些个人信息比如账号,密码,性别,爱好等,即是你需要将你输入的信息传递给程序当中,那么就需要用到用户交互input。

    注意

    在Python2 中使用raw_input              获取的都是字符串
    
    在Python3 中使用input                  获取的都是字符串
    

    2.7 流程控制

    你在生活中是不是经常遇到各种选择,比如玩色子,猜大小,比如选择走那条路回家?Python程序中也会遇到这种情况,这就用到了if语句。

    这个功能就是Python中的流程控制语句if。
    那么如何使用这个功能呢?(下面就是)

    If 条件: #引号是将条件与结果分开。
        结果。# 四个空格,或者一个tab键,这个是告诉程序满足这个条件的结果。
    

    2.7.1 判断条件 if

    age = input("输入年龄:")
    if int(age) >= 18:
        print("成年了,能干成年人的事了")
    

    2.7.2 二选一 if else

    age = input('请输入您的年龄:')
    if int(age) > 18:
        print('你可以去网吧尽情的嗨皮了')
    else:
        print('你现在还不行啊!')
    

    以上这种写法是让用户输入内容,然后进行比较,如果一个条件成立那就执行print,为了明确的区分改执行哪些部分,当条件成立后执行缩进的代码

    然后程序就退出了.下边的else就不会在执行了

    2.7.3 多个选项进行单选(选择题) if elif

    num = input('请输入要比较的数字:')
    if int(num) >= 22:
        print('可以扯证了')
    elif int(num) >= 18:
        print('成年了,可以干一些成年的事了')
    elif int(num) < 18:
        print('还是小屁孩')
    

    以上写法就是我们做的单选题一样,三个分支判断中只要有个成立,其余都不在执行

    2.7.4 嵌套if

    name = input('请输入名字:')
    if name == 'meet':
        age = input('请输入年龄:')
        if int(age) == 18:
            print('输入全部正确')
        else:
            print('年龄输入错误!')
    else:
        print('名字输入错误!')

    这样写法很常用,这样我们就可以明确的知道用户输入的名字和年龄那个是错误的,并且还做一个判断如果名字正确后在进行判断密码

  • 相关阅读:
    制作企业IT解决方案的几项训练
    Community Server 1.0 Beta安装使用记录
    SharePoint Portal Server定制之区域模板定义
    从售前工作的角度了解SharePoint产品和技术
    活动目录的应用组策略
    企业客户组织结构在售前工作中的作用
    Community Server 1.0 Beta安装使用记录(二)
    2004年钢铁行业信息化现状
    IT解决方案编写小结
    关于软件系统架构设计的一些新思想
  • 原文地址:https://www.cnblogs.com/Leon27-29/p/12168649.html
Copyright © 2020-2023  润新知