python学习笔记(1)

1、Python变量和数据类型
八大类型变量:整型、浮点数、字符串、布尔值、空值
整型和浮点数与Java一致,字符串可以使用单引号,布尔值是TrueFalse(大小写注意),运算法则是and/or/not运算,也可以使用==/||/!运算符,空值使用None
    1)print用法:使用逗号,连接字符串。每次遇见逗号输出一个空格。
    2)注释是#
    3)变量命名,与其它语言一致,大小写英文、数字和_的集合,且不能用数字开头
    4)rr'''字符串'''可以将整行字符串转义,而且r'''字符串'''可以多行显示
    5)u用于将带有中文字符的字符串能够显示出来,同时,在文件头写入 # -*- coding: utf-8 -*- 告诉解释器使用UTF-8来读取源代码,可以剔除UnicodeDecodeError
    6)与javascript一样,会把0,空字符串'',None看成False。同时布尔运算存在短路计算,在计算a and b时,若a为False,因为运算肯定为False,返回a;若a为True,因为取决于b,所以返回b。计算a or b时,若a为True,因为计算肯定为True,返回a;若a为False,取决于b,则返回b
  5)u用于将带有中文字符的字符串能够显示出来,同时,在文件头写入  # -*- coding: utf-8 -*- 告诉解释器使用UTF-8来读取源代码,可以剔除UnicodeDecodeError
    6)与javascript一样,会把0,空字符串'',None看成False。同时布尔运算存在短路计算,在计算a and b时,若a为False,因为运算肯定为False,返回a;若a为True,因为取决于b,所以返回b。计算a or b时,若a为True,因为计算肯定为True,返回a;若a为False,取决于b,则返回b

2、List和Tuple类型
    List类型与javascript和groovy类似,数组内容可以存放各种类型的值。tuple表示如 t = ('Adam', 'List', 'Bart') list表示如 t = ['Adam', 'List', 'Bart'],两类型获取方式一致。如t[0]
        List类型:
        1)append()方法追加元素到末尾,insert(位置,元素)方法插入到相应位置
        2)pop()方法将最后一个元素删除,pop(位置)删除相应位置元素
        Tuple类型:
        1)元组是immutable的
        2)空元组(),单个数元组需要加逗号,避免运算歧义,如(1,),多元素元组则不用
        3)元组里面可以包含list,修改list里面的元素则可以使得元组可变(就是一个广义表)
3、条件判断和循环
    1)Python代码的缩进规则。具有相同缩进的代码被视为代码,严格按照Python的习惯写法:4个空格,不要使用Tab,更不要混合Tab和空格,退出缩进需要多敲一行回车
    2)if语句后接表达式,用代表代码块开始,同时else也是需要一个代表代码块开始
    3)不像java可以使用else if,要用elif 代替,因为需要缩进对齐
    4)使用for in循环迭代,如for name in L;while循环与java一样
    
4、Dict和Set类型
    Dict与Java中的Map类似,与json格式一样,花括号{}表示这是一个dict,然后按照key:value写出来即可。set的元素没有重复,而且无序,创建方式如:s = set(['a','b','c']) 传入一个list,并自动剔除list重复元素
   Dict类型:
        1)有一个函数len()可以写出数组大小
        2)使用d[key]来查找对应的value,可以使用get()方法获取值,key不存在则返回None.
        3)key元素是不可变的,所以list不能作为key,但是tuple可以
        4)加入元素方式与js和groovy的一样使用d[key]=value加入新元素,如果存在,则更新。
        5)for循环获取Dict的是key
        6)有keys()values()方法
        7)itervalues()方法与values()方法一致,获取所有values的值,但实现方式不一样,values()方法实际上是把dict的所有value转成一个list。而itervalues不会转换,只是依次从dict取出value
        8)items()方法同时获取key和value值,如for k, v in d.items():。当然也会有iteritems(),也是跟itervalues()一样。不过items()方法转换为tuple
    Set类型:
        1)使用in判断是否在set中
        2)使用add()方法加入set,使用remove()方法删除set元素
5、函数
    1)help、abs、int、str、sum、cmp等内置方法的用法
    2)定义一个函数使用def作为关键字,要写出函数名,括号和括号里面的参数和冒号,如def quadratic_equation(a, b, c):
    3)可返回多个值,但是返回的是一个元组tuple
    4)可以在定义函数时设置初始值,则可以在不输入该值时使用默认值,如def fin1(a, b=1, c=2):,同时,带初始值的参数需要跟在必须参数后面,则不能写成def fin2(a=1, b):
    5)想要参数可变,则在可变参数名字前面加*号,可传入0~n个参数,实现方法也是传入一个tuple,所以不能对传入的数组进行修改操作
6、切片
    即对list进行操作
    1)取一定范围内数值,则可以使用L[初始值下标:结束值下标:步长],如L[1:3],或者L[::2],每隔两个元素取一个,tuple也是一样,支持倒切片
    2)range(初始值,结束值)可以用来表示一段数值,如range(1,101)表示1到100的值
    3)Python没有专门用于string的截取函数,但是也是可以使用切片方式
7、迭代
    迭代是取出元素本身,而非元素的索引
    1)使用enumerate()函数获取索引,即for index, name in enumerate(L):索引在前,元素在后
    2)使用zip()函数将两个列表变成一个列表zip([10, 20, 30], ['A', "B', 'C']) 变成[(10, 'A'), (20, 'B'), (30, 'C')]
8、列表生成式
    使用range()方法生成
    1)使用列表生成,如:[ x * x for x in range(1,101)]
    2)字符串补充:可以进行使用%s,进行字符串值代替操作,并用%后面加tuple表示需要替代的字符串,如'I am %s' % ('rich') 单元组括号可选;可以使用isinstance(x,str)判读是否为str类型
    3)可以在使用for循环的列表中加入if判断剔除不需要的 如:x.upper() for x in L if isinstance(x, str)
    4)可以使用多个循环,如[ x * y for x in range(1,101) for y in range(1, 101)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值