• python学习笔记二


    1. for循环
      python的for循环和我们传统的for循环不一样,python中的for循环迭代的是一个序列
    # for循环可以表示数组的每一个元素
    # for eachnum in [1,2,3]
    #     print eachnum,
    # for 循环还可以表示迭代一个序列
    # for each in range(1,11):
    --->注意如果迭代是一个函数需要加冒号
    #     print each,
    打印结果:
    1 2 3 4 5 6 7 8 9 10
    # for循环还可以用于迭代一个字符串,打出字符串的每一个字母
    # for char in 'hello':
    #     print char,
    打印结果:
    h e l l o
    
    # 利用for循环打印出字符串的每一个字母以及相对应的下标
    # str_1='hello'
    # # print len(str_1)
    
    # for i in range(len(str_1)):
    #     print str_1[i],'-->%d' %i
    打印结果:
    h -->0
    e -->1
    l -->2
    l -->3
    o -->4

    如果我们需要取出每个字符串的每一个字符以及对应的下标,又不需要range()函数和len()来进行遍历
    那么我们可以采用枚举函数enumerate()同时进行下标和元素的遍历

    for i,ch in enumerate('hello'):
        print ch,'%d'%i

    结果:

    h 0
    e 1
    l 2
    l 3
    o 4
    1. 列表解析
    #------------------------列表解析-----------------------#
    # squared = [x ** 2 for x in range(4)]
    # # squared表示0-3的平方,这里利用列表解析可以直接再x**2后面添加
    # # x的范围,这就列表解析的强大之处
    # for i in squared:
    #     print i,
    #列表解析里面不仅可以确定变量的范围而且还可以添加if语句对变量
    # 进行条件的约束
    # sqdEvens = [x**2 for x in range(8) if  x%2==0]
    # for i in sqdEvens:
    #     print i

    (注意python里面是不添加分号的)
    (python里面的变量不需要事先声明,可以直接赋值)
    (但是python里面的函数需要实现定义,并且需要有return函数,如果没有就返回none)

    1. 函数
    #--------------------------函数------------------------------------#
    def addMe2Me(x):
        'apply + operation to argument'
        return (x+x)
    print addMe2Me(2)
    print addMe2Me('hello')
    print addMe2Me(10)

    python中的+非常强大,不仅可以用于字符串的连接,还可以进行计算

    1. range()函数用来生成指定范围的数组,start值可以不用指定,默认为1开始,但是结束值必须要指定,生成的数组范围为end-1,step默认为1
    2. python中的赋值是通过引用传递的,python中的赋值语句没有返回值,不能当作表达式
    3. python中的平方是**
    4. pythonx++,x- - 的自增自减运算符
    5. python中的赋值方式
    #-----------------------------多重赋值--------------------------#
    x=y=z=1
    print x,y,z
    #打印:1 1 1
    #-----------------------------多元赋值---------------------------#
    # (x,y,z)=(1,2,'hello')--->元组的方式进行赋值
    # print x,y,z
    # 打印:1 2 hello
    #-----------------------------变量的互换------------------------#
    x,y=1,2
    x,y=y,x--------->这里直接交换,而不需要一个temp变量
    print x,y
    打印:2 1

    (python对大小写敏感)

    1. _xxx:表示类中私有的变量,在类外不可以使用
    2. xxx:表示系统变量
      3.缩进的时候尽量不要用制表符,因为不同的文本编辑器对制表符的编译是不一样的,所以尽量使用四个空格来代替。

    3. 尽量使用局部变量代替全局变量,容易维护

    4. 在python中无需声明变量类型,不用关心内存管理,解释器会根据语法和右侧的操作数决定变量的类型,内存的管理也由解释器进行动态的分配和回收
    5. python中的赋值和清除只是引用计数的增加和减少
    #----------------------------引用计数---------------------------#
    x=123
    y=x
    print x,y
    #表示123被引用了两次
    x=234
    #x被重新赋值,123的引用次数减一
    #234的引用次数加1
    print x,y
    del y
    # 删除变量Y表示x
    # print x的引用次数减一
    # 从名称空间删除y
    # 打印:
    # 123 123
    # 234 123
    # 234
    
    1. python是面向对象的语言,所以他的返回值是一个对象
    print type(23)
    print type(type(23))
    # <type 'int'>
    # <type 'type'>
    欢迎关注我的公众号:小秋的博客 CSDN博客:https://blog.csdn.net/xiaoqiu_cr github:https://github.com/crr121 联系邮箱:rongchen633@gmail.com 有什么问题可以给我留言噢~
  • 相关阅读:
    java定时任务接口ScheduledExecutorService
    spring InitializingBean接口
    spring aop 的一个demo(未完,待完善)
    Spring ApplicationContextAware获取上下文
    Spring ProxyFactory
    搭建maven+spring+mybatis工程
    spring jdbcTemplate源码剖析
    chrome插件
    基于分支限界法的旅行商问题(TSP)一
    利用分支限界法求解单源最短路(Dijkstra)问题
  • 原文地址:https://www.cnblogs.com/flyingcr/p/10428326.html
Copyright © 2020-2023  润新知