2019-06-13

  1. 分号的选择问题
  2. 如何获得帮助信息(两种方式)
  3. 除法的运行结果是浮点数,如果想丢弃小数部分,需要使用双斜杠
  4. // 的用法
  5. %的用法 x%y=x-((x//y)*y)
  6. 圆整,按照修正后的数据在数值上是否比原数据大,又可分为向上圆整和向下圆整。

https://baike.baidu.com/item/%E5%9C%86%E6%95%B4/452326?fr=aladdin

  1. //的结果向下圆整
  2. 10%3=-2 的结果可以由 10//-3=-4 推知(10//-3的结果向下圆整到-4)
  3. 乘方** ,乘方的优先级比负号要高,所以注意 -32 和(-3)2的区别
  4. 十六进制前缀ox,八进制0o,二进制0b,都是以0开头,第二个都是字母。
  5. Python变量没有默认值,使用变量就需要给他赋值。
  6. 交互式解释器执行的时候,打印表达式的值,赋值语句不是表达式
  7. 函数print、input,input返回读取的值(字符串的形式,如果想转换为int,需要(int)x等。
  8. 在交互式解释器中输入if语句,需要按两次回车键才能执行它
  9. if x==1:print("---")
  10. 内置函数 pow,实参,调用函数,函数调用返回一个值,所以也是表达式。
    当函数调用作为语句的时候,将忽略函数的返回值。
  11. abs(-10),round(2/3),round 将浮点数圆整为与之最接近的整数,如果左右同样接近,圆整到偶数。
  12. 模块是内置函数的拓展,导入模块,import
import math
math.floor(32.9)

工作原理,用import导入模块,再以 module,function的方式使用模块中的函数。
floor 向下圆整
math包中还有 ceil ,向上圆整

  1. 不指定模块调用函数的方法(需要避免同名函数)
    from math import sqrt
  2. 可以用变量引用函数 ,比如 foo=math.sqrt,二者就有相同的作用了。
  3. nan (not a number)
  4. 处理虚数的包,cmath,计算负数的平方根sqrt(不导入包,Python也支持虚数这种类型)
    cmath.sqrt(-1)=1j
    -1的平方根是 1j
  5. from turtle import *
  6. 是注释

  7. `'和"'各自的用处,\的用处
  8. 如何字符串中同时包含 单引号和双引号?两种方式(其一,长字符串)
  9. 两种字符串的拼接
    'hello''world'(1)
    x+y,'hello'+'world'(2)
  10. 在解释器中
    'hello \n world' ->转移字符不会被解释->>repr()[获得合法Python表达式的值,返回指定值的字符串表示]
    print("hello \n world") 会解释->str()[将合理的方式将值转换为用户能够看懂的字符串]
    注意下面两条语句的区别
print(repr("hello,\nworld"))
print(str("hello \n world))
  1. 在Python3中,所有的字符串都是 Unicode 字符串
  2. 三引号(单引号或者双引号)的好处(变成长字符串)
    -> 显示多行,避免使用转义字符(换行的,或者对引号的)
  3. 在常规字符串的过程中,\可以用于续写,过程中的\和换行符将被转移忽略。
  4. 将带转移的字符串变成原始字符串的两种方法
    ->> \,r'XXX'
  5. 为什么原始字符串不能以单个反斜线结束?(也是r'xxx')的缺点
    https://blog.csdn.net/jpch89/article/details/83479625
    注意 采用拼接普通字符串的一个解决办法
  6. P18左上角代码的实现问题???
  7. byte(不可变)bytearray(可变) 的用法???
b'hello world' 
  1. UTF-32 32位统一编码转换格式(Unicode Transformation Format 32bits)
    UTF-8 在进行单字节编码的时候,依然使用ASCII编码,以便与较旧的系统兼容,但是不在这个范围内的字符串,使用多个字节(最多为6个字节)进行编码.UTF-8 是默认的编码
    P19
  2. ASCII和Unicode标准的区别。
len("hello world".encode("UTF-8"))
len("hello world").encode()
  1. 解码
b'H\xc3\xa6ll\x'.decode()
  1. 另外的方法
bytes("hello world",encoding="utf-8)
str(b'dsad',encoding="utf-8")

当不知道类似于字符串或者byte的对象属于哪个类的时候采用的方法,具有通用性。

  1. 特殊的注释来指定使用其他的编码规则来存储源代码
    # -*- coding:encoding name -*-
    encoding name=utf-8/latin-1
  2. bytearray
x=bytearray(b"hello")
x[1]=ord(b"u")# (ord来获取其序数值,也就是值,对用户不友好)
x

  1. 几乎在所有情况下都可使用列表来代替元祖,一种例外的情况时将元祖用作字典键。
  2. edward=['dd',24]
    jonh=[eward,24]
  3. 容器:包含其他对象的对象,主要的两种容器是序列(列表和元祖)、映射(字典)
    列表和元祖每个元素都有编号,映射中每个元素都有名称。
    有一种不是序列也不是映射的容器,就是集合。
  4. Python中没有字符类型,一个字母也是字符串类型。
  5. 索引:对字面量的索引,对input返回的索引,对变量的索引
  6. 切片(左闭右开)-> 对首或者尾的索取-->简写
    numbers[3:6]
    要注意的一点是:在执行切片操作时,如果第一个索引指定的元素位于第二个索引指定的元素的后面,结果就为空序列
    (除非步长为负数)
    简写
    number[:3]
    number[-3:]
    number[:]
    加上步长:
number[0:10:2]
number[8:3:-1]
number[0:10:-2]->>结果为空

步长为负,从右向左提取元素。
步数为正,从起点移到重终点,步数为负,从终点移到起点。

  1. 序列+ 相加
  2. 序列的乘法 *
  3. None表示什么也没有
    用法
sequence=[None] *10
  1. 布尔运算符 in
'w' in permission(可以是列表或者字符串)
['xx','xxxx'] in YY

用于垃圾邮件过滤器等

  1. 内置函数 min max len
len(number)(序列)
min(number)
max(number)
min(2,24,4)
  1. 字符串不容易修改,所以可以使用字符串创立列表
list("hello")

逆操作

seq=['1','2','3']
sep='+'
sep.join(seq)
  1. 列表的基本操作
    修改列表
    删除列表
del name[2]

给切片赋值

name[2:]=list('ar')(不考虑长度)
插入新元素
number[1:1]=[2,3,4]
相反操作
number[1:3]=[]  del number[1:3]
  1. 列表的方法
lst.append(4)
lst.clear()
b=a.copy()
x.count(1)
a.extend(b) a=a+b a[len(a):]=b
knight.index('who')
numbers.insert(3,'four') number[3:3]='four'
x.pop() x.pop(3) 唯一一个修改列表并返回非None值的方法
push的代替 append
x.remove("hello")
x.reverse()  list(reversed(x))(返回一个迭代器)
x.sort() 就地修改,不返回。 两种方法来取得排序后的(sorted,.copy())
  1. 关键字参数
x.sort(key=len)
x.sort(reverse=True)【逆序】
  1. 元祖
    一个元素元组的创立
    tuple的用法

你可能感兴趣的:(2019-06-13)