zoukankan      html  css  js  c++  java
  • day13

    globals():返回一个字典,包含全部的全局变量

    locals():返回一个字典,包含的是当前作用域的所有变量

    b = 2
    def func1():
        a = 1
        print(locals())        # {'a': 1}
        print(globals())       #{'__name__': '__main__', '__doc__': None, '__package__': None, '......}
    func1() 
    

     字符串类型代码的执行  eval,exec,complie

    eval:执行字符串类型的代码,并返回最终结果

    s1 = '1 + 2 +3'
    print(s1)                     #1 + 2 +3
    s2 = "{'name' : 'ake'}"
    print(s2)                     #{'name' : 'ake'}
    print(eval(s1),type(eval(s1))) #6 <class 'int'>
    print(eval(s2),type(eval(s2)))  #{'name': 'ake'} <class 'dict'>
    

     exec:执行字符串类型的代码,不返回结果,代码流

    s3 = '''for i in range(3):
        print(i)
        '''
    print(exec(s3))         #0 1 2 3 None
    exec(s3)                #0 1 2 3

    input, print 输入输出相关:

    input:函数接受一个标准输入数据,返回为string 类型

    print:打印输出

    print('666')              #666
    print(1,2,3,4,5)          #1 2 3 4 5
    print(*[1,2,3])           #1 2 3    打散成单个字符
    print(1,2,3,sep='|')      #1|2|3   sep打印多个内容,分隔符默认空格
    print(1,end=',')
    print(233)                #1,233 end默认换行
    f = open('t1',encoding='utf-8',mode = 'w')
    print(666,'777','888',file = f)

     hash:获取一个对象(可哈希对象:int,str,Bool, tuple)的哈希值 

     id:获取该对象的内存地址

    dic = {'name':'alex','dfsj;fljkksldfjd':'123'}
    print(hash('name'))
    print(hash('name1'))
    print(hash('sdslkdjfslkfj'))
    print(hash(1))
    print(hash(1000))
    

     字典:会将所有的key在内存中转化成id

    文件操作相关:

      open:函数用于打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写

    模块相关__import__:函数用于动态加载类和函数

    help:函数用于查看函数或木块用途的详细说明

    name = 'ake'
    print(help(str))
    

     打印出的是str的源代码以及应用

    callable:函数用于检查一个对象是否是可调用的,如果返回True,object仍然可能调用失败,但如果返回的是False,调用对象object绝对不成功

    name = 'ake'
    def func1():
        pass
    print((callable(name)))    #False
    print(callable(func1))     #True   可以被调用
    

     dir:函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数是,返回参数的属性、方法列表,如果参数包含方法__dir__(),该方法将被调用,如果参数不包含__dir__(),该方法将最大限度地收集参数信息。

    name = 'ake'
    print(dir(name))     #可以看到所能被调用的方法

    range:函数可创建一个整数对象,一般用在for循环中。

    python2X:range(3)--->[0,1,2]列表

    python3x:range(3)--->range(0,3)可迭代对象

    next:内部实际使用了__next__方法,返回迭代器下一个项目

    iter:函数用来生成迭代器(讲一个可迭代对象,生成迭代器)

    数字相关:

    bool:用于将测定参数转换为布尔类型,如果没有参数,返回False

    print(bool(1<2 and 3>4 or 5<6 and 9>2 or 3>1))      #True
    print(bool('fdslsdjfl'))          #True

    int:函数用于讲一个字符串或数字转换为整型

    print(int('123'))
    print(int(1.23))      #取整,不是四舍五入
    print(int('0101',base=2))   #将二进制的0101,转化成十进制,结果为5

    float:函数用于将整数和字符串转换成浮点数

    print(type(3.14))          #<class 'float'>  

    complex: 函数用于创建一个值为real + imag * j的复数或者转化一个字符串或数为复数

    如果第一个参数为字符串,则不需要指定第二个参数

    bin:将十进制转换成二进制并返回

    print(bin(100))           #0b1100100

    oct:将十进制转化成八进制字符串并返回

    print(oct(7))     #0o7
    print(oct(8))     #0o10
    print(oct(9))     #0o11
    

    hex:将十进制转化成十六进制字符串并返回

    print(hex(10))      #0xa
    print(hex(15))      #0xf
    print(hex(17))      #0x11

    abs:函数返回数字的绝对值

    print(abs(-100))      #100
    

      divmod:计算出数与被除数的结果,返回一个包含商和余数的元祖

    print(divmod(103,12))       #(8, 7)  (商,余数)
    例题:103 条数据,你每页显示12 条数据,最终显示多少页
    print(divmod(103,12))

     round:保留浮点数的小数位数,默认保留整数,如果后面设置要保留的位数,则四舍五入 

    print(round(3.141592653))       #3
    print(round(3.141592653,4))    #3.1416
    

     pow:求x**y次幂,如果是三个参数为x **y的结果对z取余

    print(pow(2,5))      #32
    print(pow(2,5,3))    #2是余数
    

     sum:对可迭代对象进行求和计算(可设置初始值) 

    print(sum([1,2,3,4,100,101]))    #211
    print(sum([1,2,3,4,100],101))    #211
    print(sum([int(i) for i in [1,'2',3,'4','100',101]]))   #211
    

      min:返回可迭代对象的最小值(可加key,key为函数名,通过函数的规则,返回最小值)

    print(min([1,2,-3,4,-5]))     #-5
    print(min([1,2,-3,4,-5],key=abs))   #1
    

      max:返回可迭代对象的最大值(可加key,key为函数名,通过函数的规则,返回最大值)

    print(max([1,2,3,4,]))   #4
    
  • 相关阅读:
    不使用库函数,编写函数int strcmp(char *source, char *dest) 相等返回0,不等返回-1【转】
    atol实现【转】
    atol的实现【转】
    关于内存中栈和堆的区别(非数据结构中的堆和栈,区别)【转】
    ubuntu下安装android模拟器genymotion【转】
    buntu下命令行安装jdk,android-studio,及genymotion虚拟机来进行android开发【转】
    Ubuntu下安装Android studio【转】
    C++模板(二)【转】
    【转】iOS中设置导航栏标题的字体颜色和大小
    【转】Java 截取字符串
  • 原文地址:https://www.cnblogs.com/beriuta/p/9534172.html
Copyright © 2011-2022 走看看