为了账号安全,请及时绑定邮箱和手机立即绑定

初识Python

廖雪峰 移动开发工程师
难度入门
时长 5小时 0分
学习人数
综合评分9.43
3762人评价 查看评价
9.7 内容实用
9.4 简洁易懂
9.2 逻辑清晰
  • 现在,班里有3名同学:

    >>> L = ['Adam', 'Lisa', 'Bart']

    今天,班里转来一名新同学 Paul,如何把新同学添加到现有的 list 中呢?

    第一个办法是用 list 的 append() 方法,把新同学追加到 list 的末尾:

    >>> L = ['Adam', 'Lisa', 'Bart']
    >>> L.append('Paul')
    >>> print L
    ['Adam', 'Lisa', 'Bart', 'Paul']

    append()总是把新的元素添加到 list 的尾部。

    如果 Paul 同学表示自己总是考满分,要求添加到第一的位置,怎么办?

    方法是用list的 insert()方法,它接受两个参数,第一个参数是索引号,第二个参数是待添加的新元素:

    >>> L = ['Adam', 'Lisa', 'Bart']
    >>> L.insert(0, 'Paul')
    >>> print L
    ['Paul', 'Adam', 'Lisa', 'Bart']

    L.insert(0, 'Paul') 的意思是,'Paul'将被添加到索引为 0 的位置上(也就是第一个),而原来索引为 0 的Adam同学,以及后面的所有同学,都自动向后移动一位。


    查看全部
  • 特殊函数:

    1. enumerate( ) :将索引和其对应的元素进行捆绑成一个元素。

        L['paul','adam']

       enumerate(L) 将L数列变换成[(0,'paul'),(1,'adam')]

    2. zip([ ],[ ]) :将两个数列合成一个数列。

        zip([10,20,30],['paul','adam','alex']) 生成一个数列为:[(10,'paul'),(20,'adam'),(30,'alex')]


    3. 判断是否为字符串,或数字的函数。

    isinstance(x,str):判断是否为字符串:

    isinstance(x,int): 判断是否为数字

    4. 求除数和余

    一般采用 / 来就商,用%来求余数。

    可以使用 divmod() 来求商和余数。

    例如:10/3=3

               10%3=1

              divmod(10,3)=(3,1)

    5. 将字符串已某一字符进行分割。其函数为split().其结果是一个数列 list 格式

    例如:L='glover,mask,cat vitamins,call ambulance'

    L.split(',')=['glover','mask','cat vitamins','call ambulance']

    6.将多个字符串连接在一块。其函数为join(),

    L=['glover','mask','cat vitamins','call ambulance']

    ','.join(L)=glover,mask,cat vitamins,call ambulance

    (使用,号连接各字符串,若想用空格,则可改为  ' '.join(L)   )


    6.range() 函数

    range(start,stop,step): 从start开始,到stop为止,但不包含stop,步进为step。

    range(5): 默认从0开始,终于5.则为0,1,2,3,4,

    range(1,5,2):1,3


    查看全部
    0 采集 收起 来源:索引迭代

    2020-03-24

  • 20后面没有加:!!!

    一定要记得加冒号,所以一直在报错

    查看全部
  • 记住倒数第一个元素的索引是-1。倒序切片包含起始索引,不包含结束索引。

    查看全部
    0 采集 收起 来源:倒序切片

    2020-03-07

  • Python中数据类型

    查看全部
  • 注意:if 语句中的...表示没有列出的其它星期名称,测试时,请输入完整。

    如果事先创建好一个set,包含'MON' ~ 'SUN':

    weekdays = set(['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN'])

    再判断输入是否有效,只需要判断该字符串是否在set中:

    x = '???' # 用户输入的字符串if x in weekdays:
        print 'input ok'else:
        print 'input error'


    查看全部
  • d = {
        'Adam': 95,
        'Lisa': 85,
        'Bart': 59
    }
    for key in d:
        print key + ':' , d[key]

    查看全部
  • python中不同类型的字符拥有不同的格式符,分别为:

    %s    字符串 (采用str()的显示)

    %r    字符串 (采用repr()的显示)

    %c    单个字符

    %b    二进制整数

    %d    十进制整数

    %i    十进制整数

    %o    八进制整数

    %x    十六进制整数

    用法实例:

    1

    2

    name = "Tom"

    print "Hello %s" % name

    在第二行中print了一个格式化字符串,把name变量的内容替换到%s处。

    打印出来就是:

    1

    Hello Tom


    查看全部
    1 采集 收起 来源:Python之访问dict

    2020-03-07

  • 创建包含1个元素的 tuple 呢?来试试:

    >>> t = (1)
    >>> print t
    1

    好像哪里不对!t 不是 tuple ,而是整数1。为什么呢?

    因为()既可以表示tuple,又可以作为括号表示运算时的优先级,结果 (1) 被Python解释器计算出结果 1,导致我们得到的不是tuple,而是整数 1。

    正是因为用()定义单元素的tuple有歧义,所以 Python 规定,单元素 tuple 要多加一个逗号“,”,这样就避免了歧义:

    >>> t = (1,)
    >>> print t
    (1,)

    Python在打印单元素tuple时,也自动添加了一个“,”,为了更明确地告诉你这是一个tuple。

    多元素 tuple 加不加这个额外的“,”效果是一样的:

    >>> t = (1, 2, 3,)
    >>> print t
    (1, 2, 3)


    查看全部
  • 如果Paul同学排在最后一个,我们可以用list的pop()方法删除:

    >>> L = ['Adam', 'Lisa', 'Bart', 'Paul']
    >>> L.pop()
    'Paul'
    >>> print L
    ['Adam', 'Lisa', 'Bart']

    pop()方法总是删掉list的最后一个元素,并且它还返回这个元素,所以我们执行 L.pop() 后,会打印出 'Paul'。

    如果Paul同学不是排在最后一个怎么办?比如Paul同学排在第三:

    >>> L = ['Adam', 'Lisa', 'Paul', 'Bart']

    要把Paul踢出list,我们就必须先定位Paul的位置。由于Paul的索引是2,因此,用 pop(2)把Paul删掉:

    >>> L.pop(2)
    'Paul'
    >>> print L
    ['Adam', 'Lisa', 'Bart']


    查看全部
  • 布尔运算在计算机中用来做条件判断,根据计算结果为True或者False,计算机可以自动执行不同的后续代码。

    在Python中,布尔类型还可以与其他数据类型做 and、or和not运算,请看下面的代码:

    a = True
    print a and 'a=T' or 'a=F'

    计算结果不是布尔类型,而是字符串 'a=T',这是为什么呢?

    因为Python把0空字符串''None看成 False,其他数值和非空字符串都看成 True,所以:

    True and 'a=T' 计算结果是 'a=T'
    继续计算 'a=T' or 'a=F' 计算结果还是 'a=T'

    要解释上述结果,又涉及到 and 和 or 运算的一条重要法则:短路计算。

    1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。

    2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。

    所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。


    查看全部
  • 因为Python把0空字符串''None看成 False,其他数值和非空字符串都看成 True

    短路计算:

    1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。

    2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。

    所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。


    查看全部

  • def toUppers(L):
        return [x.upper() for x in L if isinstance(x,str) ]
    print toUppers(['Hello', 'world', 101])


    查看全部
    0 采集 收起 来源:条件过滤

    2020-03-07

  • d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }def generate_tr(name, score):    return '<tr><td>%s</td><td >%s</td></tr>' % (name, score)tds = [generate_tr(name, score) for name, score in d.iteritems()]print '<table border="1">'print '<tr><th>Name</th><th>Score</th><tr>'print '\n'.join(tds)print '</table>'


    查看全部
    0 采集 收起 来源:复杂表达式

    2020-03-07

  • 注:字符串可以通过 % 进行格式化,用指定的参数替代 %s。字符串的join()方法可以把一个 list 拼接成一个字符串。


    查看全部
    0 采集 收起 来源:复杂表达式

    2020-03-07

举报

0/150
提交
取消
课程须知
如果您了解程序设计的基本概念,会简单使用命令行,了解中学数学函数的概念,那么对课程学习会有很大的帮助,让您学起来得心应手,快速进入Python世界。
老师告诉你能学到什么?
通过本课程的学习,您将学会搭建基本的Python开发环境,以函数为基础编写完整的Python代码,熟练掌握Python的基本数据类型以及list和dict的操作。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!