基本语法

作者: 落地成佛 | 来源:发表于2018-08-23 20:46 被阅读26次
    • 注释使用#符号,多行注释用''',""

    • 语句之间使用分号(;)分割

    • 字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。

    • 占位符代表空 pass

    • 判断变量类型 type() /isinstance()【i=4; type(i)==i;isinstance(i, int)】

    • 删除引用 del 【a=5;del a】

    • 删除列表数据 【a = [1, 2, 3, 4, 5, 6];del a[2]】

    • list列表【a = [1, 2, 3, 4, 5, 6]】#list列表元素可修改

    • Tuple列表【tuple = ( 'abcd', 786 , 2.23, 'runoob', 70.2 ) ; tup3 = "a", "b", "c", "d"; # 不需要括号也可以】#tuple列表元素不可修改不允许删除

    • 文件操作 with open("x.txt") as f:

    • 列表相加用+【a=[1,2];b=[3,4];print(a+b);#[1,2,3,4]】

    • 数据类型转换【int(a)】

    • 逻辑运算符 and 、or、 not

    • 成员运算符 in 、not in

    • 身份运算符 is、is not

    • is 与 == 区别: is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。

    • 字符串格式化 【print ("我叫 %s 今年 %d 岁!" % ('小明', 10))】

    • 三引号:三引号允许一个字符串跨多行,字符串中可以包含换行符、制表符以及其他特殊字符

    • name属性 每个模块都有一个name属性,当其值是'main'时,表明该模块自身在运行,否则是被引入,其值为文件名

    • 多列表

    >>>a = ['a', 'b', 'c']
    >>> n = [1, 2, 3]
    >>> x = [a, n]
    >>> x
    [['a', 'b', 'c'], [1, 2, 3]]
    >>> x[0]
    ['a', 'b', 'c']
    >>> x[0][1]
    'b'
    
    • 列表相关函数
    len(list)  列表元素个数 
    max(list)返回列表元素最大值 
    min(list)返回列表元素最小值 
    list(seq)将元组转换为列表 
    list.append(obj)在列表末尾添加新的对象
    list.count(obj)统计某个元素在列表中出现的次数
    list.index(obj)从列表中找出某个值第一个匹配项的索引位置 
    list.insert(index, obj)将对象插入列表 
    list.pop([index=-1]])移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 
    list.remove(obj)移除列表中某个值的第一个匹配项 
    list.reverse()反向列表中元素 
    list.sort(cmp=None, key=None, reverse=False)对原列表进行排序 
    list.clear()清空列表 
    list.copy()复制列表
    
    • 缩进来表示代码块,并且缩进空格数得相同
    if True:
        print ("Answer")
        print ("True")
           print("false")#出错
    
    • 字符串的截取的语法格式如下:变量[头下标:尾下标]
    str='Runoob'
    print(str)                 # 输出字符串Runoob
    print(str[0:-1])           # 输出第一个到倒数第二个的所有字符Runoo
    print(str[0])              # 输出字符串第一个字符R
    print(str[2:5])            # 输出从第三个开始到第五个的字符noo
    print(str[2:])             # 输出从第三个开始的后的所有字符noob
    print(str * 2)             # 输出字符串两次RunoobRunoob
    print(str + '你好')        # 连接字符串Runoob你好
    print('hello\nrunoob')      # 使用反斜杠(\)+n转义特殊字符
    hello
    runoob(换行了)
    print(r'hello\nrunoob')     # 在字符串前面添加一个 r,表示原始字符串,不会发生转hello\nrunoob
    
    • 导入相应的模块 import 与 from...import
    在 python 用 import 或者 from...import 来导入相应的模块。
    将整个模块(somemodule)导入,格式为: import somemodule
    从某个模块中导入某个函数,格式为: from somemodule import somefunction
    从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc
    
    • 无序不重复元素的序列set
    student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}
     
    print(student)   # 输出集合,重复的元素被自动去掉 {'Mary', 'Jim', 'Rose', 'Jack', 'Tom'}
     
    # 成员测试 结果:Rose 在集合中
    if 'Rose' in student :
        print('Rose 在集合中')
    else :
        print('Rose 不在集合中')
     
     
    # set可以进行集合运算
    a = set('abracadabra')
    b = set('alacazam')
    
    print(a - b)     # a和b的差集
    print(a | b)     # a和b的并集
    print(a & b)     # a和b的交集
    print(a ^ b)     # a和b中不同时存在的元素
    
    • 无序的对象集合Dictionary 键(key)必须使用不可变不可重复
    dict = {}
    dict['one'] = "1 - 菜鸟教程"
    dict[2]     = "2 - 菜鸟工具"
     
    tinydict = {'name': 'runoob','code':1, 'site': 'www.runoob.com'}
     
     
    print (dict['one'])       # 输出键为 'one' 的值
    print (dict[2])           # 输出键为 2 的值
    print (tinydict)          # 输出完整的字典
    print (tinydict.keys())   # 输出所有键
    print (tinydict.values()) # 输出所有值
    #-----------------------------字典使用技巧-------------------------
     knights = {'gallahad': 'the pure', 'robin': 'the brave'}
     for k, v in knights.items():
        print(k, v)
    #结果
    gallahad the pure
    robin the brave
    #-----------------------------同时遍历两个或更多的序列,可以使用 zip() 组合-----------------
     questions = ['name', 'quest', 'favorite color']
    answers = ['lancelot', 'the holy grail', 'blue']
     for q, a in zip(questions, answers):
         print('What is your {0}?  It is {1}.'.format(q, a))
    
    What is your name?  It is lancelot.
    What is your quest?  It is the holy grail.
    What is your favorite color?  It is blue.
    

    if 语句

    if condition_1:
        statement_block_1
    elif condition_2:
        statement_block_2
    else:
        statement_block_3
    

    while 循环使用 else 语句
    else 子句在穷尽列表或条件变为 false 时被执行,但被break终止时不执行

    count = 0
    while count < 5:
       print (count, " 小于 5")
       count = count + 1
    else:
       print (count, " 大于或等于 5")
    '''结果
    0  小于 5
    1  小于 5
    2  小于 5
    3  小于 5
    4  小于 5
    5  大于或等于 5
    '''
    

    函数

    " -----------计算面积函数--------------------"
    def area(width, height):
        return width * height
     
    def print_welcome(name):
        print("Welcome", name)
     
    print_welcome("Runoob")
    w = 4
    h = 5
    print("width =", w, " height =", h, " area =", area(w, h))
    "--------------------不定长参数-------------------------------"
    # 加了星号 * 的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数。
    def printinfo( arg1, *vartuple ):
       "打印任何传入的参数"
       print ("输出: ")
       print (arg1) #70
       print (vartuple) #(60, 50)
    "----------------加了两个星号 ** 的参数会以字典的形式导入。----------------------"
    # 可写函数说明
    def printinfo( arg1, **vardict ):
       "打印任何传入的参数"
       print ("输出: ")
       print (arg1)
       print (vardict)
    "-----------------------匿名函数------------------------"
    # 可写函数说明
    sum = lambda arg1, arg2: arg1 + arg2
     
    # 调用sum函数
    print ("相加后的值为 : ", sum( 10, 20 ))
    print ("相加后的值为 : ", sum( 20, 20 ))
    "------------------------函数修改外部变量-----------------"
    num = 1
    def fun1():
        global num  # 需要使用 global 关键字声明
        print(num) #1
        num = 123
        print(num)#123
    fun1()
    print(num)#123
    

    • (1)_xxx 保护变量
      (2)__xxx 类中的私有变量/方法名
      (3)xxx 系统定义名字, 代表python里特殊方法专用的标识
    • 类的方法第一个参数表示对象本身,一般用self表示
    • 构造方法: init()
    • 继承 class DerivedClassName(Base1, Base2, Base3):

    相关文章

      网友评论

        本文标题:基本语法

        本文链接:https://www.haomeiwen.com/subject/ryypiftx.html