Python基本知识点备忘



查看原文:http://www.wyblog.cn/2016/11/20/python%e5%9f%ba%e6%9c%ac%e7%9f%a5%e8%af%86%e7%82%b9%e5%a4%87%e5%bf%98/

注:本篇博文内容总结自廖雪峰老师的python教程:

http://www.liaoxuefeng.com/

1.如果想直接执行py文件,应该在文本开头加入#!/usr/bin/env python3,然后赋予权限chomod a+x hello.py

2.print()函数里可以输出多个字符串,用逗号隔开,输出时,逗号被替换成空格。

3.python大小写敏感!且缩进最好使用4个空格,最好在文本编辑器里将Tab自动换为4个空格。

4.转义字符\:pint(' I\'m ok.'),如果需要的转义字符比较多,可以用r` `表示''内部字符串默认不转义。

5.a='ABC',此语句首先在内存里创建了'ABC'字符串,然后创建了一个名为a的变量,并指向'ABC'。

6.除法有两种,一是/,而是//。/结果是浮点数,//结果是整数。

7.ASCII编码和Unicode编码的区别:ASCII编码是1个字节,而Unicode编码通常是2个字节。为了节约空间,UTF-8编码把一个Unicode字符根据不同的数字大小编码成1-6个字节,常用的英文字母被编码成1个字节,汉字通常是3个字节,只有很生僻的字符才会被编码成4-6个字节。可以看出,ASCII实际上可以被看成是UTF-8的一部分,实现了向下兼容功能。 可见,以Unicode或者UTF-8编码时,可以支持多语言,而后者可实现空间压缩,更适合于传输。读到内存里的数据一般以Unicode编码,而存在磁盘里的数据一般以UTF-8编码。

8.为了保证中文不乱码,在开头应加入# -*- coding: utf-8 -*-,统一以UTF-8格式进行编码。

9.list列表,符号[],内容可增可减,索引号从0开始,索引号-1表示最后一个元素,类似可倒推-2、-3等,常用方法:append()、pop()、insert(),并且,元素的数据类型也可以不同,甚至包含另一个list。

10.tuple元组,符号(),内容不可更改,其它的跟list的方法一样。要注意的是,当定义只有一个元素的tuple时,必须t=(1,),逗号不能少,不然t会被赋值整数1。特殊情况:当tuple有list元素时,这个list里的元素是可变的。

11.input()输入进来的始终是字符串,可以使用int(str)方法将字符串转为整数。

12.for...in...循环可以依次把list或者turple里的每一个元素给迭代出来。range(n)生成的是从0到n-1的数,list(range(n))可将生成的序列转为list。

13.print打印语句要注意,引用变量打印,用的是%,例如print("Hello,%s!" % name)

14.python内置字典dict,其他语言也叫map,使用键值对(key-value)形式存储,它是根据key计算出value的内存地址,可以直接取得value,所以速度非常快。要往dict里加数据,可以直接d[key]=value这种形式自动插入。但如果读取d[key]时,key不存在,那么就会报错,这时可以通过get方法返回一个默认值,d.get(key,-1)。要注意的是,key必须是一个不可变对象,用list做key就会报错。另外,dict内部存放的顺序和key放入顺序是没有关系的。缺点是,内存占用过多。

15.set与dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集&、并集|等操作。

16.对于不变对象来说,调用对象自身的任意方法,也不会改变该对象自身的内容。相反,这些方法会创建新的对象并返回,这样,就保证了不可变对象本身永远是不可变的。例如对str对象进行方法操作,其不会改变本身str,而是返回一个新的被操作后的str。



查看原文:http://www.wyblog.cn/2016/11/20/python%e5%9f%ba%e6%9c%ac%e7%9f%a5%e8%af%86%e7%82%b9%e5%a4%87%e5%bf%98/
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值