美文网首页
廖雪峰python精简教程(winboy专属)

廖雪峰python精简教程(winboy专属)

作者: 邱凯达 | 来源:发表于2017-05-31 16:18 被阅读91次

    安装Python

    • 下载安装python64位 32位
    • 记得勾选Add Python 3.5 to PATH ,然后点“Install Now”即可完成安装。

    安装文本编辑器


    编写程序前应该知道

    • 输出 print()
    • 输入 input()
    • 变量 简单理解为一个存放东西的箱子
    • 注释 用#来写注释,#所在行计算机直接忽视. 注释是给人看的,而不是给机器看的.
    • 代码块 编辑器中的每一行都是一个语句,当语句以冒号:结尾时,缩进的语句视为代码块。
    • 缩进 坚持使用4个空格的缩进, 便于阅读和理解.sublimes编辑器已经默认设置一个tab等于4个空格.

    数据类型

    • 整数
    • 浮点数
    • 字符串 字符串是以单引号'或双引号"括起来的任意文本
      转义字符\可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\\\表示的字符就是\
      为了简化,Python还允许用r''表示''内部的字符串默认不转义
    • 布尔值 TureFalse (大小写需要完全一样)
      可以用and,or,not来运算布尔值(与或非)
      and 与运算, 只有全都Ture才输出Ture
      or 或运算,只有有Ture就输出Ture
      not 非运算, 把True变成FalseFalse变成True
    • 空值 用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。
    • 变量 简单理解为一个存放东西的箱子.
      变量在程序中就是用一个变量名表示.
      变量名必须是大小写英文、数字和_的组合,且不能用数字开头.
    • =赋值语句 把=右边的值赋给左边.
    • 常量 就是不变的变量. 在Python中, 通常用全部大写的变量名表示常量, 如PI.
    • 三种除法
      /无论怎么除都是浮点数
      //结果取整
      % 结果取余

    字符编码

    • 请读者自己搞清楚ASCII、 Unicode和UTF-8的关系
      • 简单说就是从最简单的ASCII开始发展, 各国为自身需要制定自己语言的编码. 导致在多语言混合的文本里, 会出现乱码.
      • 为解决乱码问题, 于是制定了Unicode.
        Unicode是所有语言都统一到一套编码里.
        ASCII编码是1个字节, 而Unicode编码通常是2个字节.
        但如果你写的文本基本上全部是英文的话,用Unicode编码比ASCII编码需要多一倍的存储空间, 这在存储和传输上就十分不划算.
      • 为了解决浪费的问题, 于是制定了UTF-8编码.
        UTF-8编码简单理解就是Unicode的精简, 只保留最常用的字符.

    Python的字符串

    • Python3中, 字符是以Unicode编码的,这意味着它支持多语言.
    • 可以利用ord()函数 跟 chr()函数 进行字符和编码的转换.
      在编写程序时, 最开头加上
      #!/usr/bin/env python3
      # -*- coding: utf-8 -*-
      第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;
      第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。
    • 格式化%
      这里的格式化不是指硬盘的格式化, 而是可以理解为模版.
      例如 我们经常会输出类似亲爱的xxx你好!你xx月的话费是xx,余额是xx之类的字符串,而xxx的内容都是根据变量变化的,所以,需要一种能够简便地表达格式化字符串的方式。
      %d 整数, %f 浮点数, %s 字符串, %x 十六进制整数 这四种常见的占位符.
      使用范例: 'Hi, %s, you have $%d.' % ('Michael', 1000000)
      输出为'Hi, Michael, you have $1000000.'
      %.2f 表示保留小数点2位显示.
      当字符串里%是表达一个普通字符时, 需要编写为%%.

    list和tuple

    • list
      • list是一种有序的集合. 比如,列出班里所有同学的名字,就可以用一个list表示:
        >>> classmates = ['Michael', 'Bob', 'Tracy']
        >>> classmates ['Michael', 'Bob', 'Tracy']
        这个变量classmates就是一个list。
      • len()函数可以获得list元素的个数.如输入len(classmates),得到3.
      • 输入classmates[0], classmates[1], classmates[2]可分别获得Michael, Bob, Tracy.值得留意的是, 里边的元素是从0开始数的.
      • 输入classmates[-1], classmates[-2], classmates[-3], 则分别获得Tracy, Bob, Michael,值得注意的是里边的数字.表示从最后一个元素数起.
      • 使用classmates.append('Adam')往list classmates的最后添加一个元素Adam
      • 使用classmates.insert(2, 'Jack')Jack这个元素插到classmates这个list的第三个位置.其它元素往后退一位.
      • 使用classmates.pop()删除list的最后一个元素.输入classmates.pop()后,list的最后一个位置的元素被删除.
      • 使用classmates.pop(i)来删除list的特定位置元素. 输入classmates.pop(2), 则list的第三个位置的元素被删除
      • 使用直接赋值可以直接替换list里的某个元素.如classmates[2] = 'Adam', 则这个list里的第三个元素被替换为'Adam'.
      • list里元素的类型可以是不同的, 比如L = ['apple', 13213, bb] 表明字符串, 数字, 变量 都可以是list的元素.
      • 一个list可以是另一个list的元素,如A = ['apple', 'banana', ['mouse', 'keyboard'], 'orange'], 值得留意的是如果输入len(A)的话, 得到的结果是4, 因为此时子list是被当作一个元素处理.
      • 把list拆开写比较好理解.
        A = ['apple', 'banana']
        B = ['mouse', 'keyboard', A]
        如果想要取得banana这个元素, 可以写A[1]或者B[2][1]. 你可以把B这个list当成二维数组,以此类推有三维, 四维....
    • tuple
      • tuple称为元组, 跟list非常类似, 区别在于tuple后使用()来囊括元素, 而list是使用[]; 其次在于list的元素可重新赋值, tuple的元素不可变换.
      • tuple一旦初始化就不能修改.
      • tuple因为不可变, 所以代码更加稳定, 可控, 安全.
      • 只有1个元素的tuple定义时必须加一个逗号,,来消除歧义.
        例:t = (1,)

    if, elif, else条件判断

    • 经典情景

    age = 3 if age >= 18: print('adult') elif age >= 6: print('teenager') else: print('kid')

    千万不要忘记条件后的冒号:,else后原本也有条件, 只是省略了, 但该有的冒号:还得加上.


    再谈input()

    • 在做条件判断时需要注意, input()返回的数据类型是str,str不能直接和整数比较,必须先把str转换成整数。
      Python提供了int()函数来完成这件事情:

    s = input('birth: ') birth = int(s) if birth < 2000: print('00前') else: print('00后')


    循环

    • Python提供两种循环
      • for x in...:
      • while ...:

    留意条件的冒号

    • for x in ...:循环就是把每个元素代入变量x,然后执行缩进块的语句。
    • range()函数 可以生成一个整数序列, 如range(5)是生成0, 1, 2, 3, 4这样的整数序列. 再通过list()函数可以转换为list.
    • while循环,只要条件满足,就不断循环,条件不满足时退出循环。
    • 利用breakcontinue跳出循环
      • break的作用是提前结束循环.
      • continue的作用是提前结束本轮循环,并直接开始下一轮循环。

    n = 0 while n < 10: n = n + 1 print(n)

    n = 0 while n < 10: n = n + 1 if n % 2 == 0: # 如果n是偶数,执行continue语句 continue # continue语句会直接继续下一轮循环,后续的print()语句不会执行 print(n)


    dict和set

    相关文章

      网友评论

          本文标题:廖雪峰python精简教程(winboy专属)

          本文链接:https://www.haomeiwen.com/subject/bdqjfxtx.html