notes for lxf(一)
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(一)的更多相关文章
- notes for lxf(五)
类和实例的绑定方法和属性 实例绑定 obj.func = func obj.func(obj, &argv) obj.func = MethodType(func, obj) 第一个参数是方 ...
- notes for lxf(四)
类名首字母通常大写 创建实例 类名 +() __init__方法 创建实例时把一些属性绑上去 __init__方法第一参数永远是self 表示船舰的实例本身 类是实例的模板 实例是一个一个具体的对象 ...
- notes for lxf(三)
纯函数式编程是没有变量的,只要输入确定输出就确定 指高度抽象的编程范式 特点 函数本身可以作为参数传入 或者允许返回一个函数 Higher-order function 一个函数可以接收另一个函数作为 ...
- notes for lxf(二)
函数 abs()绝对值 max()返回最大值 raise 后接异常类 引发异常 函数返回多个值其实就是返回一个tuple 函数默认返回None 如果有必要检查参数类型用isinstance() typ ...
- 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 ...
- Android Weekly Notes Issue #237
Android Weekly Issue #237 December 25th, 2016 Android Weekly Issue #237 这是本年的最后一篇issue, 感谢大家. 本期内容包括 ...
- Android Weekly Notes Issue #230
Android Weekly Notes Issue #230 November 6th, 2016 Android Weekly Issue #230. Android Weekly笔记, 本期内容 ...
- Android Weekly Notes Issue #229
Android Weekly Issue #229 October 30th, 2016 Android Weekly Issue #229 Android Weekly笔记, 本期内容包括: 性能库 ...
- Android Weekly Notes Issue #227
Android Weekly Issue #227 October 16th, 2016 Android Weekly Issue #227. 本期内容包括: Google的Mobile Vision ...
随机推荐
- minikube是什么
最近在学习Kubernetes,需要再本地搭建换一个minikube的环境 搭建好之后我们查看节点: lideMacBook-Pro:~ liyuanhong$ kubectl get node NA ...
- 运行selenium脚本,报seleneium common exception.SessionNotCreatedException:Message:Unable to find a matching set of capabilities错误
- JAVA集合1--总体框架
JAVA集合是JAVA提供的工具包,包含了常用的数据结构:集合.链表.栈.队列.数组.映射等.JAVA集合工具包的位置是java.util.* JAVA集合主要可以分为4个部分:List.Set.Ma ...
- nodejs学习以及SSJS漏洞
0x01 简介 什么是nodejs,it's javascript webserver! JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充当了解析器的角色.而对 ...
- 【译】使用 Flutter 实现跨平台移动端开发
作者: Mike Bluestein | 原文地址:[https://www.smashingmagazine.com/2018/06/google-flutter-mobile-developm ...
- shell 批量远程主机执行命令
[yunwei@Y24-209 ~]$cat ls.sh #!/bin/bash ip55=`cat ip1` for i in $ip55;do ping -c 1 $i if [ $? -eq 0 ...
- 中标麒麟龙芯平台--docker基础镜像制作
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 的出现为开发人员和运维人员带来了极大的便利.Docker在X86下常见的发行版Linux如Ub ...
- python复习2
在操作字符串时,我们经常遇到str和bytes的互相转换.为了避免乱码问题,应当始终坚持使用UTF-8编码对str和bytes进行转换.
- adb devices 找不到设备
问题如图: 解决方法: 1.在开发人员选项中,找到USB调试,打开USB调试 2.如果还不行,下载360手机助手,连接手机,会自动安装驱动 3.再次adb devices,OK
- 读spring源码(一)-ClassPathXmlApplicationContext-初始化
工作来几乎所有的项目都用到了spring,却一直没有系统的读下源码,从头开始系统的读下吧,分章也不那么明确,读到哪里记到哪里,仅仅作为个笔记吧. 先看ClassPathXmlApplicationCo ...