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 ...
随机推荐
- I2C(四)linux3.4(写代码)
title: I2C(四)linux3.4(写代码) date: 2019/1/29 17:18:42 toc: true --- I2C(四)linux3.4(写代码) 老师的参考代码 https: ...
- Hadoop记录-queue使用率
#!/bin/sh ip=xxx port=8088 export HADOOP_HOME=/app/hadoop/bin rmstate1=$($HADOOP_HOME/yarn rmadmin - ...
- Spring cloud gateway
==================================为什么需要API gateway?==================================企业后台微服务互联互通, 因为 ...
- 微信小程序版本自动更新弹窗提示
代码如下: onLaunch () { if (wx.canIUse('getUpdateManager')) { const updateManager = wx.getUpdateManager( ...
- table自适应大小,以及内容换行
在table的样式中加入以下两个样式: table-layout: fixed; word-wrap:break-word;
- 乙方渗透测试之Fuzz爆破
前言 爆破在渗透测试中,对技术的要求不高,但是对技巧和字典的要求就很高了,本篇整理下平时学到的一些爆破思路和技巧(偏web渗透登陆),当你无措可施时,暴力破解是最好的方式. 世界上最可怕的事情是你的习 ...
- 20155324《网络对抗》Exp1 PC平台逆向破解(5)M
20155324<网络对抗>Exp1 PC平台逆向破解(5)M 实验目标 本次实践的对象是一个名为~pwn1~的~linux~可执行文件. 该程序正常执行流程是:~main~调用~foo~ ...
- 浅入深出Vue系列
浅入深出Vue导航 导航帖,直接点击标题即可. 文中所有涉及到的资源链接均在最下方列举出来了. 前言 基础篇 浅入深出Vue:工具准备之WebStorm搭建及配置 浅入深出Vue之工具准备(二):Po ...
- HttpClient基本使用
1.在pom.xml加入对httpclient的必需的jar包的依赖 <!--//httpclient的接口基本都在这儿--> <dependency> <groupId ...
- 贪吃蛇游戏——C语言双向链表实现
采用了双向链表结点来模拟蛇身结点: 通过C语言光标控制函数来打印地图.蛇身和食物: /************************** *************************** 贪吃 ...