zoukankan      html  css  js  c++  java
  • python学习笔记

    注释使用#
    python约定坚持使用4个空格的缩进(格式化)
    转义字符可以转义很多字符,比如 表示换行, 表示制表符,字符本身也要转义,所以表示的字符就是
    Python还允许用r”表示”内部的字符串默认不转义
    如果字符串内部有很多换行,用 写在一行里不好阅读,为了简化,Python允许用”’…”’的格式表示多行内容
    同一个变量可以反复赋值,而且可以是不同类型的变量
    两种除法:/ 浮点除法,结果为浮点数,// 地板除,结果为整数

    Unicode把所有语言都统一到一套编码里,但最常用的是用两个字节表示一个字符(如果要用到非常偏僻的字符,就需要4个字节)。

    现代操作系统和大多数编程语言都直接支持Unicode。
    相比于ascii码编码的数据,只需要在前面补0即可得到unicode码,但是如果使用全英文文本,unicode码会消耗多一倍的空间。
    于是,又出现了utf-8编码,为可变长编码,UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被

    编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。如果你要传输的文本包含大量英文字符,用UTF-8

    编码就能节省空间。
    在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。
    所以你看到很多网页的源码上会有类似 的信息,表示该网页正是用的UTF-8编码。

    python中,ord()函数获取字符的编码表示,chr()函数把编码转换为对应的字符
    由于Python的字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes。
    Python对bytes类型的数据用带b前缀的单引号或双引号表示。
    以Unicode表示的str通过encode()方法可以编码为指定的bytes
    如果我们从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法:

    要计算str包含多少个字符,可以用len()函数
    len()函数计算的是str的字符数,如果换成bytes,len()函数就计算字节数

    为了避免乱码问题,应当始终坚持使用UTF-8编码对str和bytes进行转换。

    由于Python源代码也是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码。当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:

    !/usr/bin/env python3

    -- coding: utf-8 --

    第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;
    第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。
    申明了UTF-8编码并不意味着你的.py文件就是UTF-8编码的,必须并且要确保文本编辑器正在使用UTF-8 without BOM编码:

    格式化字符串输出,类似于c语言
    ‘Hi, %s, you have Hi,Michael,youhave‘Hi,Michael,youhave1000000.’
    区别在于,百分号 % 用于格式化字符串
    如果要输出字符百分号 % 需要转义 用%%来表示一个%

    ---------------------------------------------------------------------------------------------------------------------------------------------------------

    About Python
    之前忘记记录的函数input()用于I/O输入

    Python内置的一种数据类型是列表:list(理解为一个特殊的顺序表,并内置各种操作函数),用大括号定义
    如果要取最后一个元素,除了计算索引位置外,还可以用-1做索引,直接获取最后一个元素,同理可取倒数2,3,4个
    classmates = [‘Michael’, ‘Bob’, ‘Tracy’]
    classmates.append(‘Adam’)

    classmates
    [‘Michael’, ‘Bob’, ‘Tracy’, ‘Adam’]
    演示append

    classmates.insert(1, ‘Jack’)
    classmates
    [‘Michael’, ‘Jack’, ‘Bob’, ‘Tracy’, ‘Adam’]
    演示insert

    classmates.pop()
    ‘Adam’

    classmates
    [‘Michael’, ‘Jack’, ‘Bob’, ‘Tracy’]
    演示pop,取出最后一个元素

    classmates.pop(1)
    ‘Jack’
    classmates
    [‘Michael’, ‘Bob’, ‘Tracy’]
    带参数的pop可以删除指定位置的元素

    list内的元素数据类型可以不相同,很自由,可以将list的某一个元素定义为另外一个list

    s = [‘python’, ‘java’, [‘asp’, ‘php’], ‘scheme’]
    len(s)
    4

    另一种有序表叫元组 tuple,一旦初始化就不可修改,更安全,用小括号定义
    只有1个元素的tuple定义时必须加一个逗号,来消除歧义
    tuple的每个元素,指向永远不变

    对于所有嵌套语句,都需要通过缩进来判断是否是嵌套内的一部分。
    (貌似没有大括号这种存在,所以一定要按格式写代码,我挺喜欢这点的,可以写的更漂亮)
    条件判断语句if
    相比c语言,if后不需要加括号,但是要在判断语句(不管是if 还是else 还是elif)后加冒号:

    循环语句
    for in循环 记得有冒号
    names = [‘Michael’, ‘Bob’, ‘Tracy’]
    for name in names:
    print(name)

    while循环 同样有冒号
    sum = 0
    n = 99
    while n > 0:
    sum = sum + n
    n = n - 2
    print(sum)

    测试python输出流格式
    以下代码均测试通过,可以按要求输出如下内容
    Hello,Bart

    Hello,Lisa

    Hello,Adam

    1 、
    L = [‘Bart’, ‘Lisa’, ‘Adam’]
    for name in L:
    print(‘Hello,%s’ %name)
    2 、
    L = [‘Bart’, ‘Lisa’, ‘Adam’]
    for name in L:
    print(‘Hello,’,name)

  • 相关阅读:
    [转]zxing二维码的生成和解码 j2se
    [转]Android的网络与通信
    (转)Firefox:浏览器内置数据库之路
    dom Framework oop模块
    我的框架 别名机制
    获取屏幕的PDI值
    mass Framework lang模块
    王云飞 《绿色生活》(附译文)
    dom Framework query模块
    dom Framework核心模块发布!(更新)
  • 原文地址:https://www.cnblogs.com/hcw110/p/9718064.html
Copyright © 2011-2022 走看看