python基础

编辑技巧

CTRL D: 未选中时,复制当前行到下一行,选中时复制粘贴选中部分。
有时候pycharm无法安装各种模块,可能是python环境安装的不好,更换python安装包重新安装可能会好

变量:用来存东西,由字母数字下划线组成,区分大小写(而html中不区分大小写)不能以数字开头,不要中文和拼音,下划线分割(推荐)和驼峰式太low 不能用保留字段关键字命名(查看关键字命令:
from keyword import kwlist
for i in kwlist:
    print(i)
id(a)  查看a的内存地址

对象:一切皆对象,对象皆可调用方法。调用方法:object.属性()

列表元组

字典
  
v = {'A':'a','B':'b','C':'c'}
  获取‘c’有两种方法
  1, v['C']
  2, v.get('C',None)  这样能避免字典中没有'C‘而报错

集合set

1去重性2无序3元素必须可哈希harshable(int,str,tuple 是harshable,list dict unsharshable)  s = set(1,'andy',)

数字类型(可以强制类型转换):int整型 float浮点数 complex复数
int和bytes类型无法互转,需要借助str中转一下

格式化:%s string字符串
    %d digit数字
    %f float浮点数

字符串 ''  ''  ''    '''  '''
  字符串拼接:join   ''.join(['a','b','c'])或者''.join(('a','b','c'))拼出来就是abc了
  注意:拼接尽量不要用+,浪费内存

运算符
算数运算符: +   -     *    /    %(取余数)    //(整除)    **(幂运算)
赋值运算符: +=   -=     *=    /=   %=    //=    **=
比较运算符:   >     <     >=     <=     !=    ==
逻辑运算符:   and   or  not   短路原则-> and 之前有假,整体就是假,and之后不计算;or之前有真,整体为真,or之后不计算 
身份运算符:   is    is not
成员运算符:   in   not in

注释:  # 或者 '''   '''

shebang:  #!(存疑,没搞懂还)

Tab和空格:不同的编辑器对Tab的定义不一样,有的是四个空格,有的是三个空格。一个制表符是一个字符。推荐用四个空格

条件:if else elif 

循环:

  for  while break contine  推荐for,然后才是while 多层循环
  break     跳出所在循环(如果有两层,跳出本层,外层不受影响)
  continue    跳出所在循环的本次循环,继续所在循环的下次循环(如果有两层,跳出本层,外层不受影响)
  标志位:设定开始标志位exit_flag = False 运行函数或功能后把标志位更改 exit_flag = Ture if   最后判断标志位if exit_flag,根据判断结果进行下步操作

序列:有序的队列,必须有序。字符串是序列,也有索引。列表。元组。

文件操作:

  打开:f  = open('文件路径','打开方式',encoding='utf8')  
  打开方式 r读 w写 a追加  rb二进制读  等  f 是文件句柄,也叫文件描述符  或者 with open()as f
  读:查f.read()
    read(75)读75个字符,一个字母c和一个'\n'一个中文‘随’都是一个字符
    read()读所有字符,如果最末是换行,读到'\n',print的话,会把'\n'打印成一个空行(一个空字符占了一行),如果最末不是换行,遇到‘\n’换行,后面接着打印其它字符,不会有空行,read()读所有,print一次,就跟原文一样
    readline()读一行,如果行末有换行的话,会读到'\n',print的话,会把'\n'打印成一个空行(其实是一个空字符占了一行),空行是因为每个print都是单独一行打印
    readlines()读所有行并返回一个列表
    read()和readlines()都是读所有,大文件不适合,容易卡
    readline()读一行或者f = readlines() f.close for i in f:print(i.strip())做成迭代器形式
  写:增删改
    f.write('str格式') 先写到内存缓冲区,继续执行下面语句文件关闭前,再从内存写入磁盘,这样执行效率高(不可能write一次,就写入硬盘一次,效率低下)
    改:打开方式w  f.write('str') 把原来内容抹去,重新写入str
    增:打开方式a  f.write('str') 追加内容

 编码和解码
  python中有两种数类型 str(使用unicode编码格式存放)和bytes(使用十六进制格式存放)
  unicode是万国码,bytes更接近于计算机底层(二进制),所以文件的存储和传输都使用bytes类型进行。
  str转成bytes格式的三种方式
    b‘zifuchuan’
    bytes('zifuchuan',encoding='utf-8')
    'zifuchuan'.encode(utf-8)

  二者之间可以通过utf8、gbk、韩、日等其他编码规则转成unicode
  utf8一个汉字占三个字符,gbk一个汉字占两个字符
  有两种互转方式:encode() decode() 和 str()   bytes()强转,后期待完善
  windows系统处理是默认是gbk编码方式

 

 

posted @ 2017-12-05 16:01  Andy__li  阅读(205)  评论(0)    收藏  举报