python基本语法知识

注释

1、单行注释以 # 开头。

2、多行注释为 '''xxx'''。

字符串

1、单引号与双引号含义一样。

2、自然字符串, 通过在字符串前加r或R。 如 r"this is a line with \n" 则\n会显示,并不是换行。

print输出

print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=" "(空格)。

输入

在python2.7里是raw_input(),3.0是input(),输入得到的均是字符串。

raw_input不管输入什么返回的都是字符串,input输入字符串时要加‘ ’

数字

1、complex为复数类型。2+5j或者complex(2,5)。

2、 type() 函数可以用来查询变量所指的对象类型。

3、isinstance()函数也可以用来判断一个对象是否是已知的类型。

4、type与isinstance的区别:type()不会认为子类是一种父类类型。isinstance()会认为子类是一种父类类型。

5、数值的除法(/)总是返回一个浮点数,要获取整数使用//操作符。

6、** 表示乘方运算。


字符串

1、索引值以 0 为开始值,-1 为从末尾的开始位置。

2、str[0:-1]表示第一个到倒数第二个的所有字符。

3、python字符串不能被改变,所以不可以向索引位置赋值。

4、+组合,*重复。

身份运算符

1、is 是判断两个标识符是不是引用自一个对象,is not 是判断两个标识符是不是引用自不同对象。(内存地址是否相同,id())

2、但是为了提高内存利用效率对于一些简单的对象,如一些数值较小的int对象,python采取重用对象内存的办法,如指向a=2,b=2时,由于2作为简单的int类型且数值小,python不会两次为其分配内存,而是只分配一次,然后将a与b同时指向已分配的对象。

3、is 与 == 区别:
is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。
>>>a = [1, 2, 3]
>>> b = a
>>> b is a 
True
>>> b == a
True
>>> b = a[:]                        #没弄明白这两个的区别在哪里哭
>>> b is a
False
>>> b == a
True

列表

1、创建一个列表,只要把逗号分隔的不同的数据项使用中括号括起来即可。数据项不需要是相同类型。

2、列表的方法:

(1)list.append(obj):在列表末尾添加新的对象

(2)list.count(obj):统计某个元素在列表中出现的次数

(3)list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

(4)list.index(obj):从列表中找出某个值第一个匹配项的索引位置

(5)list.insert(index, obj):将对象插入列表

(6)list.pop(obj=list[-1]):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

(7)list.remove(obj):移除列表中某个值的第一个匹配项

(8)list.reverse():反向列表中元素

(9)list.sort([func]):对原列表进行排序

(10)list.clear():清空列表

(11)list.copy():复制列表

元祖

1、与列表的区别是小括号表示,元素不能改变。

2、元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用。

3、元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组。

4、输入时没有括号但用逗号隔开的值也是元组。

字典

1、格式:d = {key1 : value1, key2 : value2 }。

2、键是唯一的,不可变的。

3、dict.clear()清空字典。del dict删除字典。

4、赋值、浅拷贝、深度拷贝的区别:Python 直接赋值、浅拷贝和深度拷贝解析 | 菜鸟教程  http://www.runoob.com/w3cnote/python-understanding-dict-copy-shallow-or-deep.html

5、fromkeys()方法:

用于创建一个新字典,以序列seq中元素做字典的键,value为字典所有键对应的初始值。

seq = ('name', 'age', 'sex')
dict = dict.fromkeys(seq)
print ("新的字典为 : %s" %  str(dict))
dict = dict.fromkeys(seq, 10)
print ("新的字典为 : %s" %  str(dict))
以上实例输出结果为:
新的字典为 : {'age': None, 'name': None, 'sex': None}
新的字典为 : {'age': 10, 'name': 10, 'sex': 10}

6、dict.get(key, default=None):返回指定键的值,如果值不在字典中返回default值

dict.items():以列表返回可遍历的(键, 值) 元组数组

dict.keys():以列表返回一个字典所有的键

dict.setdefault(key, default=None):和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default

dict.values():以列表返回字典中的所有值

pop(key[,default]):删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。

popitem():随机返回并删除字典中的一对键和值(一般删除末尾对)。

集合

1、可用{}创建,会自动删除重复元素,如果要创建一个空集合,你必须用 set() 而不是 {} ;后者创建一个空的字典。

迭代器与生成器

Python yield 使用浅析 | 菜鸟教程  http://www.runoob.com/w3cnote/python-yield-used-analysis.html

好厉害的样子,现在看不懂,以后再看吧安静

函数

1、在 python 中,类型属于对象,变量是没有类型的。

2、python 函数的参数传递:
不可变类型:类似 c++ 的值传递,如 整数、字符串、元组。如fun(a),传递的只是a的值,没有影响a对象本身。比如在 fun(a)内部修改 a 的值,只是修改另一个复制的对象,不会影响 a 本身。
可变类型:类似 c++ 的引用传递,如 列表,字典。如 fun(la),则是将 la 真正的传过去,修改后fun外部的la也会受影响
python 中一切都是对象,严格意义我们不能说值传递还是引用传递,我们应该说传不可变对象和传可变对象。

3、不定长参数:加了星号(*)的变量名会存放所有未命名的变量参数。如果在函数调用时没有指定参数,它就是一个空元组。两个**时,是创建了一个列表,保存不定长的键值对。

4、global将函数内部变量改为全局变量,nonlocal将嵌套作用域改为局部变量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值