[python小白]入门py 2.0

python字符串

(1) ''或者 " " 或者.. (2)不支持单字符串(仍看做一个字符串使用)
(3)访问子字符串可以使用方括号来截取字符串,例如var1[0] var2[1:5]
(4)可以修改、赋值:
var1[: 6} +'Runoob!'
(5)可以使用转义字符,如\ \n啊什么的,\\就是反斜杠符号了。
【*是重复输出字符串,如 a*2 就是输入a两次啦】
【还有 in 就是在不在其中 :】
if( "M" not in a) :
(6)支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。
print "My name is %s and weight is %d kg!" % ('Zara', 21)
这里呢,%c是字符和ascii,%s字符串, d证书,f浮点数,具体格式化操作 http://www.runoob.com/python/python-strings.html
(7)python三引号,可以串行多行,可以包含换行符制表符巴拉巴拉。。。
可以定义unicode字符串,u。。
(8)内联函数 链接相同,遇到了再说吧。

python列表
(1)从0开始,可以用list[0] / list[2:5] 访问
(2)可以更新; list.append('Google')
那么就添加了一个元素,他们是分开的(从空的加的话,下标就从0开始)
(3)可以删除:del list[2]
(4)列表脚本操作符:
+用于组合列表,*用于重复列表。
len([1,2,3[) 长度
['hi']*4 直接生成了长度为4的列表哇
(5)截取: L[-2] 读取倒数第二个元素
(6)函数:(没看,用时添加)
http://www.runoob.com/python/python-lists.html
cmp(list 1,list 2)
len, max是直接返回最大值
包含方法:
l.count(obj)出现次数
l.extend(seq)一次加多个值
list.insert(index, obj)
list.index(obj)
(第一个匹配值)
list.reverse()用于倒转
还有sort啊,remove,pop。
【方括号↑】

python元组。

(1)元组和列表类似,不同的是元素不能修改,使用小括号,创建之后隔开。
元组中只包含一个元素时,需要在元素后面添加逗号
tup1 = (50,)
(2)下标从0开始,可以直接访问
【不允许修改,但是可以连接+组合】
【不允许删除,但是可以删除整个元组】
(3)同样可以len((1,2,3))
以及+ * in
for x in (1,2,3) print x
(4)可以截取。无符号的的对象可以以逗号分隔开,默认为元组

python字典。
(1)字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中
(2)键一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一。
>>>dict = {'a': 1, 'b': 2, 'b': '3'};
>>> dict['b']
'3'
>>> dict
{'a': 1, 'b': '3'}
(3)值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
(4)向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对
(直接加就好了:
dict={'name':'zara, 'age': 7, 'class': 'first'};
dict['age']=8;
dict['school']='second';

(z这个分号是怎么回事?)
“del 删除”可能会出事情(这个字典也不复存在)
字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的,但键不行。
(5)
两个重要的点需要记住:
1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住。
2)键必须不可变,所以可以用数字,字符串或元组充当,所以用列表就不行。(列表是可见的。。)
(6)dict.clear()
删除字典内所有元素

============
函数time.time()用于获取当前时间戳,
import time; # 引入time模块

ticks = time.time()
print "当前时间戳为:", ticks
(没看)

python函数

return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
【下面的,划重点】========
在 python 中,类型属于对象,变量是没有类型的:
a=[1,2,3]
a="Runoob"
以上代码中,[1,2,3] 是 List 类型,"Runoob" 是 String 类型,而变量 a 是没有类型,她仅仅是一个对象的引用(一个指针),可以是 List 类型对象,也可以指向 String 类型对象。

可更改(mutable)与不可更改(immutable)对象

在 python 中,strings, tuples, 和 numbers 是不可更改的对象,而 list,dict 等则是可以修改的对象。
不可变类型:变量赋值 a=5 后再赋值 a=10,这里实际是新生成一个 int 值对象 10,再让 a 指向它,而 5 被丢弃,不是改变a的值,相当于新生成了a。
可变类型:变量赋值 la=[1,2,3,4] 后再赋值 la[2]=5 则是将 list la 的第三个元素值更改,本身la没有动,只是其内部的一部分值被修改了。

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

python 中一切都是对象,严格意义我们不能说值传递还是引用传递,我们应该说传不可变对象和传可变对象。
调用函数时,默认参数的值如果没有传入,则被认为是默认值。
加了星号(*)的变量名会存放所有未命名的变量参数。(可以 一个 , 也可以多个)
===============匿名函数
python 使用 lambda 来创建匿名函数。

lambda只是一个表达式,函数体比def简单很多。
lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
lambda函数拥有自己的命名空间,且不能访问自有参数列表之外或全局命名空间里的参数。
虽然lambda函数看起来只能写一行,却不等同于C或C++的内联函数,后者的目的是调用小函数时不占用栈内存从而增加运行效率。
语法
lambda函数的语法只包含一个语句,

# 可写函数说明
sum = lambda arg1, arg2: arg1 + arg2;

# 调用sum函数
print "相加后的值为 : ", sum( 10, 20 )
print "相加后的值为 : ", sum( 20, 20 )

return语句[表达式]退出函数,选择性地向调用方返回一个表达式。不带参数值的return语句返回None。之前的例子都没有示范如何返回数值,下例便告诉你怎么做:
def sum( arg1, arg2 ):
# 返回2个参数的和."
total = arg1 + arg2
print "函数内 : ", total
return total;

# 调用sum函数
total = sum( 10, 20 );


def sum(arg1,agr2):
total=agr1+agr2
print "hanshunei": ,total
return total;

total=sum(10,20);

猜你喜欢

转载自www.cnblogs.com/lx2331/p/9891363.html