[PYTHON]基础学习

大部分和其他的语言一样就不多做赘述,就提取一些不同的要点记录。

1.list

list翻译成列表,list是一个有序的集合,可以添加,删除的集合。

和基础语言c语言等等不一样的是,list像是数组对象,更封装了一些方法。

list同样不可以越界,但是list可以取倒数,比如倒数第一个list[-1]

那么list的下标取值范围为:-len-------len-1

2.list的方法

(1)append方法,末尾插入:

lisrt.append('skdj')

(2)insert方法,利用索引号插入

list.insert(1,'sjdkj')

(3)pop方法,利用索引号删除,默认为0。

list.pop()

3.list的特性

(1)list中的元素类型可以不同

例子:List1=['dsjk',123,true]

当然list中也可以有list

List2=['dsjk',[1,2],true]

List2=['dsjk',List1,true]

 

2.tuple

这一种有序列表的名字叫做:元祖,和list非常像,但是tuple以初始化就无法修改。

 tuple用()来定义

另外有一个有趣的事情,比如tuple中有一个list

比如:tuple(1,2,['1','s']) 这样tuple[2][0]这样是可以用于改变tuple中的list

这一点并不会与性质违背,tuple仍是没有改变

 

3.python使用缩进的方式来识别代码并进行编译

例子:

if a>80:

  print("dhsjhdjh");

else:

  print("sdjksjdk");

如果正确则执行缩进

另外有一个不同 elseif 则写成 elif

 

4.通过input接受的变量都是字符型,python是动态变量

可以通过强转制来改变,和c sharp利用相同的机制

4,循环语句

循环语句和java一样,也有for each

names = ['Michael', 'Bob', 'Tracy']
for name in names:
    print(name)

list(range(5))是一个0到4的整数集

while也一样,也是利用缩进来表示是不是在循环中

 

5,字典 dict

就是一个hash map一样的东西

dict=['sd':12,'sd':111]

dict[sd]就会显示12,就相当sd为12的特征码,于是编译器就可以根据这个

特征码进行查询删除等等。还可以进行判断:'sd' in dict 

删除dict.pop("sd")

6。set

与dict类似,是一组key的集合,不允许重复。

例子:set([0,1,2,3,4,5,6,1,2]) 会过滤 掉重复的东西

可以通过add的方法添加元素

remove的方法删除元素 

 

 

7.理解一个例子

>>> a = 'abc'
>>> b = a.replace('a', 'A')
>>> b
'Abc'
>>> a
'abc

也就是引用的问题。使用replace时只是创建一个新的变量进行改变

 

8.定义函数

格式:

def function(a):

  function_bosy

  #可以用pass作为占位符,定义空函数

函数返回多个值:

其实就是返回一个tuple

import math

def move(x, y, step, angle=0):
    nx = x + step * math.cos(angle)
    ny = y - step * math.sin(angle)
    return nx, ny
>>> x, y = move(100, 100, 60, math.pi / 6)
>>> print(x, y)
151.96152422706632 70.0
>>> r = move(100, 100, 60, math.pi / 6)
>>> print(r)
(151.96152422706632, 70.0)

函数如果没有返回,会自动return none;

和c++中一样,同样可以接受参数默认

可变参数:

def calc(*numbers):
    sum = 0
    for n in numbers:
        sum = sum + n * n
    return sum
>>> calc([1, 2, 3])
14
>>> calc((1, 3, 5, 7))
84

可以直接将需要传入的数据整合成一个list

定义可变参数要在定义中的参数中,加入一个*号

关键字参数

 会自动生成一个dict

def person(name, age, **kw):
    print('name:', name, 'age:', age, 'other:', kw)
>>> person('Bob', 35, city='Beijing')
name: Bob age: 35 other: {'city': 'Beijing'}
>>> person('Adam', 45, gender='M', job='Engineer')
name: Adam age: 45 other: {'gender': 'M', 'job': 'Engineer'}

 

9.高级性质

1.切片:L[i:j]:取i到j-1的元素。同样当索引为负数时,同样。

倒数的索引第一个为-1,当i为空时,默认为0.两个均为空时,为全部

L[i:j:k]i到j中每k个取一个

>>> (0, 1, 2, 3, 4, 5)[:3]
(0, 1, 2)
>>> 'ABCDEFG'[:3]
'ABC'
>>> 'ABCDEFG'[::2]
'ACEG'

2.迭代

在dict中有两种值,一个是key,一个是values

1

 

posted @ 2018-01-24 22:10  脏脏的毛毛  阅读(134)  评论(0)    收藏  举报