zoukankan      html  css  js  c++  java
  • Python刷题-4

    Python刷题-4

    1、Python不支持的数据类型有( A )
    
    A、char
    B、int
    C、float
    D、list
    注意:
    string 不是 char!!!!
    可变数据类型:列表list[ ]、字典dict{ }
    不可变数据类型:整型int、字符串str' '、元组tuple()
    
    2、下列程序打印结果为:  [1, 2, 3, 4, 5, 5, 7]
    
    nl = [1,2,5,3,5]
    nl.append(4)          #在列表的末尾插入4,[1,2,5,3,5,4]
    nl.insert(0,7)        #在列表0索引处插入7,[7,1,2,5,3,5,4]
    nl.sort()             #对列表升序排列,[1,2,3,4,5,5,7]
    print nl
    
    append()方法是指在列表末尾增加一个数据项。
    extend()方法是指在列表末尾增加一个数据集合。
    insert()方法是指在某个特定位置前面增加一个数据项。
    nl=[1,2,5,3,5];
    nl.append(4)得nl=[1,2,5,3,5,4];
    nl.insert(0,7)得nl=[7,1,2,5,3,5,4];
    nl.sort()输出[1,2,3,4,5,5,7]
    
    3、以下代码输出为:  10
    
    list1 = {'1':1,'2':2}
    list2 = list1
    list1['1'] = 5
    sum = list1['1'] + list2['1']
    print(sum)
    
    b = a: 赋值引用,a 和 b 都指向同一个对象。
    list1 和 list2 指向的是同一块内存空间
    list1['1']=5  ------>     改变了这一块内存空间中'1'的value值
    执行这一步后内存空间存储的数据变为:{'1': 5, '2': 2}
    因此 sum = list1['1']+list2['1']=5+5=10
    
    4、Python调用read()函数可实现对文件内容的读取
    
    read()读整个文件;readline()读一行;readlines()读所有行到list
    
    
    1.read([size])方法从文件当前位置起读取size个字节,若无参数size,则表示读取至文件结束为止,它范围为字符串对象。 2.readline()方法每次读出一行内容,所以,读取时占用内存小,比较适合大文件,该方法返回一个字符串对象。
    3.readlines()方法读取整个文件所有行,保存在一个列表(list)变量中,每行作为一个元素,但读取大文件会比较占内存。
    
    5、下面的python3函数,如果输入的参数n非常大,函数的返回值会趋近于以下哪一个值(选项中的值用Python表达式来表示)()
    import random 
    def foo(n):   
            random.seed()
         c1 = 0
         c2 = 0
         for i in range(n):
            x = random.random()
            y = random.random()
            r1 = x * x + y * y
            r2 = (1 - x) * (1 - x) + (1 - y) * (1 - y)
            if r1 <= 1 and r2 <= 1:
               c1 += 1
             else:
               c2 += 1
        return   c1 / c2
    
    A、 4 / 3
    B、 (math.pi - 2) / (4 - math.pi)
    C、math.e ** (6 / 21)
    D、math.tan(53 / 180 * math.pi)
    

    7、下列代码运行结果是?( C )
    a = 'a'
    print a > 'b' or 'c'
    
    A、a
    B、b
    C、c
    D、True
    E、False
    
    
    由于比较运算符优先级大于逻辑运算符,根据上表,当 a > 'b',即 'a' > 'b' 为 Fasle 时('a' 的 ASCII 码比 ‘b’ 小),返回值为 'c',故答案选C。
    
    

    9、下列程序打印结果为(  B    )
    import re 
    str1 = "Python's features" 
    str2 = re.match( r'(.*)on(.*?) .*', str1, re.M|re.I)
    print str2.group(1)
    
    A、Python
    B、Pyth
    C、thon’s
    D、Python‘s features
    
    多个标志可以通过按位 OR(|) 来指定
    re.M:多行匹配,影响 ^ 和 $
    re.I:使匹配对大小写不敏感
    分组:即用圆括号将要提取的数据包住,通过 .group()获取,一般和“|”结合使用
    re.match( r'(.*)on(.*?) .*', str1, re.M|re.I),将on左边和右边分组
    >>print(str2.group(0))
    Python's features
    >>print(str2.group(1))
    Pyth
    >>print(str2.group(2))
    's
    
    str1 = "Python's features"
    r'(.*)on(.*?) .*'
    有几个()就有几个group
    group(0) = group() = Python's features
    第一个()=group(1)
    第二个()=group(2)
    .*适配所有
    ?到后面的空格为止
    
    
    .匹配单个任意字符
    *匹配前一个字符出现0次或无限次
    ?匹配前一个字符出现0次或1次
    (.*)提取的数据为str1字符串中on左边的所有字符,即Pyth
    (.*?)提取的数据为str1中on右边,空格前面,即's
    
  • 相关阅读:
    mv 命令 简要
    mv 命令
    rmdir 命令
    rm 命令简要
    rm 命令
    mkdir 命令
    pwd 命令
    远程工具(SSH Secure)连接Centos出现中文乱码问题的解决办法
    (4)剑指Offer之链表相关编程题
    (4)剑指Offer之链表相关编程题
  • 原文地址:https://www.cnblogs.com/IT-cute/p/13679623.html
Copyright © 2011-2022 走看看