python代码不能用word和windows自带的记事本保存 word保存的不是纯文本文件 记事本会在文件开始的地方加上特殊字符(UTF-8 BOM)

交互模式启动了解释器 直接运行.py文件是一次性把文件的源代码给解释器执行

开发过程中 完全可以一边在编辑器里写代码 一边开个交互式命令窗口验证

print()连续打印 遇到逗号就会输出一个空格

编译器和解释器负责把符合语法的程序代码转换成CPU能够执行的机器码

定义变量时必须指定变量类型是静态语言 变量类型本身不固定是动态语言

python把任何数据都看成一个对象 变量就是指向这些数据对象的

/ 精确除法结果浮点数 // 地板除结果是整数 % 取余结果是整数

保存到文件或传输到浏览器用UTF-8 记事本编辑用Unicode 纯英文文本用Unicode编码会多一倍存储空间 GBK是解决中文编码的

ord()获取字符的整数表示 chr()把编码转换为对应的字符

encode() str转字节bytes  decode() 字节bytes转str 参数为'ascii' 'utf-8'

字节流b'ABC' b'\xe4\xb8' decode('utf-8', errors='ignore')忽略错误的字节

len(str)计算字符数 len(bytes)计算字节数

#!/usr/bin/env/ python3 告诉Linux系统这是一个python可执行程序 windows系统忽略这个注释

# -*-coding:utf-8 -*- 告诉python解释器按照UTF-8编码读取源代码

其实如果.py文件内容都是英文的话可以用ASCII编码 涉及到中文的话就要用UTF-8编码

ASCII美国用的一个字符占一个字节 GB2312中国用的一个中文占几个字节 Unicode所有国家统一起来 UTF-8结合到一起的可变长编码

格式化 %s用字符串替换 %d用整数替换 %f浮点数 %x十六进制整数 format()  .1f表示精度

list append(statement)追加元素到末尾 insert(index, value)插入到指定位置 pop()删除末尾元素 pop(index)指定位置删除 list.remove(statement)删除指定元素 list.count(ststement)统计某个元素个数 替换某个元素可以直接赋值给对应索引位置

tuple一旦初始化不能修改是指tuple每一个元素的指向不变  (1,)只有一个元素的tuple 不可变所以使用tuple更安全

print(, end = '')不换行打印

dict中放入数据 通过key放入 in get()判断key是否存在 pop(key)删除key和对应的value dict.fromkeys(set, value)

dict的key是不可变对象 可以为字符串 整数因为它们都是不可变的 不可以为list

dict vs list dict查找和插入的速度极快 不会随着key的增加而变慢 需要占用大量的内存 内存浪费多 list查找和插入的时间随着元素的增加而增加 占用空间小 内存浪费多 so dict是用空间换取时间的一种方法

set是一组key的集合 key不可以重复 add(key)添加元素 remove(key)删除元素 set(list)可以去重

list.sort()列表排序 str.replace('a', 'b')替换字符

对于不可变对象 调用对象自身的任意方法 不会改变对象自身的内容 这些方法会创建新的对象并返回

notes for lxf(一)的更多相关文章

  1. notes for lxf(五)

    类和实例的绑定方法和属性 实例绑定 obj.func = func obj.func(obj, &argv)  obj.func = MethodType(func, obj) 第一个参数是方 ...

  2. notes for lxf(四)

    类名首字母通常大写 创建实例 类名 +() __init__方法 创建实例时把一些属性绑上去 __init__方法第一参数永远是self 表示船舰的实例本身 类是实例的模板 实例是一个一个具体的对象 ...

  3. notes for lxf(三)

    纯函数式编程是没有变量的,只要输入确定输出就确定 指高度抽象的编程范式 特点 函数本身可以作为参数传入 或者允许返回一个函数 Higher-order function 一个函数可以接收另一个函数作为 ...

  4. notes for lxf(二)

    函数 abs()绝对值 max()返回最大值 raise 后接异常类 引发异常 函数返回多个值其实就是返回一个tuple 函数默认返回None 如果有必要检查参数类型用isinstance() typ ...

  5. ASP.NET Core 1.1.0 Release Notes

    ASP.NET Core 1.1.0 Release Notes We are pleased to announce the release of ASP.NET Core 1.1.0! Antif ...

  6. Android Weekly Notes Issue #237

    Android Weekly Issue #237 December 25th, 2016 Android Weekly Issue #237 这是本年的最后一篇issue, 感谢大家. 本期内容包括 ...

  7. Android Weekly Notes Issue #230

    Android Weekly Notes Issue #230 November 6th, 2016 Android Weekly Issue #230. Android Weekly笔记, 本期内容 ...

  8. Android Weekly Notes Issue #229

    Android Weekly Issue #229 October 30th, 2016 Android Weekly Issue #229 Android Weekly笔记, 本期内容包括: 性能库 ...

  9. Android Weekly Notes Issue #227

    Android Weekly Issue #227 October 16th, 2016 Android Weekly Issue #227. 本期内容包括: Google的Mobile Vision ...

随机推荐

  1. JavaEEMybatis基础整理

    一:对原生态JDBC问题的总结 新项目要使用mybatis作为持久层框架,由于本人之前一直使用的Hibernate,对mybatis的用法实在欠缺,最近几天计划把mybatis学习一哈,特将学习笔记记 ...

  2. 二周工作总结(php方向)

    前言:年后回来在忙着换工作,最终拿到了三家的offer,最后权衡去了一家实业公司做oa系统的开发,刚入职做一些技术的总结同时记录自己的技术进步 (一) 用mysql视图实现多个表之间的联查 优点:在实 ...

  3. Koa与Node.js开发实战(1)——Koa安装搭建(视频演示)

    学习架构: 由于Koa2已经支持ES6及更高版本,包括支持async方法,所以请读者保证Node.js版本在7.6.0以上.如果需要在低于7.6的版本中应用Koa的async方法,建议使用Babel ...

  4. [算法竞赛入门经典] 象棋 ACM/ICPC Fuzhou 2011, UVa1589 较详细注释

    Description: Xiangqi is one of the most popular two-player board games in China. The game represents ...

  5. jQuery手机触屏拖动滑块验证跳转插件

    HTML: <!DOCTYPE html> <html lang="en"> <head> <title>jQuery手机触屏拖动滑 ...

  6. Ubuntu18.04格式化U盘为NTFS的方法

    1.先安装工具ntfs-3g sudo apt-get install ntfs-3g 2.找到需要格式化的U盘在系统中的序号 df -h 找到U盘的序列号后记下来,例如“/dev/sdd1” 3.解 ...

  7. 正则表达式匹配日期,支持闰年,格式为YYYYMMDD

    年份:[\d]{4} 带31的月份:(0[13578]|1[02])((0[1-9])|([12][0-9])|(3[01])) 非2月不带31日的月份:((0[469])|11)((0[1-9])| ...

  8. PostCSS 实战

    专题截图: 项目截图: 目录说明: dest/ 发布代码文件夹: src/              预编译代码文件夹; node_modules    node 插件; gulpfile.js   ...

  9. JUC--闭锁 CountDownLatch

    CountDownLatch是一个同步辅助类,在完成一组正在其他线程中执行的操作之前,允许一个或者多个线程一直等待. 闭锁可以延迟线程的进度直到其到达终止状态,可以确保某些活动知道其他活动都完成才继续 ...

  10. linux环境变量问题

    在使用jenkins进行自动化部署的时候遇到一个问题,通过jenkins进行自动化部署的时候执行java命令时,提示java不知道是啥命令,确定是装好了java的,猜测是环境变量问题,但是在/etc/ ...