Python基础:数据类型及语法

来源:互联网 发布:手机文件粉碎机软件 编辑:程序博客网 时间:2024/06/14 10:44

数据类型

基本类型

整数:Python可以处理任意大小的整数,当然包括负整数
浮点数:就是小数
字符串:以单引号’或双引号”括起来的任意文本,可以用转义字符\来标识
布尔值:可以直接用True、False表示布尔值(请注意大小写),布尔值可以用and、or和not运算。
空值:空值是Python里一个特殊的值,用None表示。

集合类型

list:以下是list的用法

#!/usr/bin/env python3# -*- coding: utf-8 -*-#定义list,跟js的数组感觉差不多,但这个显得更js一点iamlist= ['l1', 'l2', 'l2','l3']#查询第n个元素,就像操作数组一样iamlist[n-1]#追加元素iamlist.append('l4')#用一个函数计算list的长度,跟mysql的感觉差不多,居然不是iamlist.length,因为他没有这个属性len(iamlist)#插入到索引号为1的地方iamlist.insert(1, 'l1')#弹出末尾元素/指定索引元素iamlist.pop()/pop(i)#list里面的元素的数据类型也可以不同!!iamlist = ['str', 123, True]#排序iamlist.sort()

tuple:发音【tʌpl】,意思是元组。

#list用【】定义,他用()。它也没有append(),insert()这样的方法,而且元素不可变iamtuple= ('t1', 't2', 't3')#只有1个元素的tuple定义时必须加一个逗号,,来消除歧义iamnottuple=(1)iamtuple=(1,)

dict:字典,同map类似

#同json格式iamdict = {'k1': 'v1', 'k2': 'v2'}#获取key,两种方式,-1是默认值,可以不指定iamdict['k1']/iamdict.get('k1',-1)#如果key不存在,会报错iamdict['k3']#判断字典中是否包含key'k3' in iamdict#删除keyiamdict.pop('k1')

set:集合,这个类型就比较特殊了,各种特殊

#初始化时,需要set(list),set像个函数iamset = set([1, 2, 3])t = set("Hello")         #创建一个唯一字符的集合  s.update([10,37,42])  # 在s中添加多项  #添加元素用add,同Javaiamset.add(4)#移除,也同Javaiamset.remove(4)#集合操作a = t | s          # t 和 s的并集  b = t & s          # t 和 s的交集  c = t – s          # 求差集(项在t中,但不在s中)  d = t ^ s          # 对称差集(项在t或s中,但不会同时出现在二者中) 

语法

if:条件判断,注意“:”和四个空格的缩进,能省的好像都省了!

age = 3if age >= 18:    print('i am adult')    print('i am adult too')elif age >= 6:    print('teenager')else:    print('他还是个孩子')

for/while:又是冒号

iamlist= ['l1', 'l2', 'l3']for l in iamlist:    print(l)sum = 0n = 2while n >= 0:    print(n)    n = n - 1

函数:用def进行定义,注意函数体缩进

#一般函数def my_abs(x):    if not isinstance(x, (int, float)):        raise TypeError('bad operand type')    if x >= 0:        return x    else:        return -x#空函数:passdef nop():    pass#缺少pass就会报错if age >= 18:    pass#返回多个值,注意import导入包;#Python的函数返回多值其实就是返回一个tuple#angle=0为默认参数import mathdef move(x, y, step, angle=0):    nx = x + step * math.cos(angle)    ny = y - step * math.sin(angle)    return nx, nyx, y = move(100, 100, 60, math.pi / 6)r = move(100, 100, 60, math.pi / 6)       #r为tuple类型
0 0
原创粉丝点击