美文网首页程序员
python笔记一 入门py

python笔记一 入门py

作者: 知识学者 | 来源:发表于2018-03-26 11:34 被阅读44次

    id()函数,是python内置函数,查看每一个对象的地址。

    >>> help(id);
    Help on built-in function id in module builtins:
    
    id(...)
        id(object) -> integer
        
        Return the identity of an object.  This is guaranteed to be unique among
        simultaneously existing objects.  (Hint: it's the object's memory address.)
    
    >>> id(3);
    505986504
    >>> id(3);
    505986504
    >>> id(3.0);
    20256768
    

    type();函数查看对象的类型。

    >>> type(3);
    <class 'int'>
    >>> type(3.0);
    <class 'float'>
    >>> type('str');
    <class 'str'>
    >>> type([1,2,3]);
    <class 'list'>
    >>> type((1,2,3));
    <class 'tuple'>
    

    python中对象有类型,变量无类型,和js很想,这让我们c系类的语言者有些难受。

    >>> x=66;
    >>> x
    66
    >>> x="dflx";
    >>> x
    'dflx'
    

    python支持大整数运算,学过计算机组成原理的 都知道,计算机进行浮点数运算的时候会出现溢出现象。

    >>> 2**64;
    18446744073709551616
    >>> 2**173;
    11972621413014756705924586149611790497021399392059392
    
    

    python只是解决了大整数运算,但是浮点数和整数不同,它存在上下限,超过会溢出。

    >>> 1000.0**8000
    Traceback (most recent call last):
      File "<pyshell#18>", line 1, in <module>
        1000.0**8000
    OverflowError: (34, 'Result too large')
    

    除法运算,在python3中,要取整,需要 \\

    >>> 2/5;
    0.4
    >>> 2//5;
    0
    >>> 5//2;
    2
    

    异常的计算,不必纠结。

    >>> 10.0/3
    3.3333333333333335
    >>> 0.1+0.2
    0.30000000000000004
    

    出现这种问题,主要在十进制和二进制的转换,比如0.1想要转换成二进制,会是一个循环的二进制表示不出来。


    解决上面的问题,可以采用轮子,python中的模板来解决。

    >>> import decimal;
    >>> a=decimal.Decimal("10.0");
    >>> b=decimal.Decimal("3");
    >>> a/b;
    Decimal('3.333333333333333333333333333')
    

    四舍五入

    >>> round(3.1415926,3);
    3.142
    >>> help(round);
    Help on built-in function round in module builtins:
    
    round(...)
        round(number[, ndigits]) -> number
        
        Round a number to a given precision in decimal digits (default 0 digits).
        This returns an int when called with one argument, otherwise the
        same type as the number. ndigits may be negative.
    
    

    math库,是我最喜欢的函数库,可以进行数学运算,如果在小屁孩面前展示其功能一定会惊讶它们,作为一个数学老师,会几何画板,已经可以让学生们认为你很厉害了,如果会mathematica,甚至python会让它们更加崇拜;。

    >> import math;
    >>> dir(math);
    ['__doc__', '__loader__', '__name__', '__package__', 
    '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 
    'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 
    'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 
    'fsum', 'gamma', 'hypot', 'isfinite',
     'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 
    'modf', 'pi', 'pow', 'radians', 'sin', 'sinh',
     'sqrt', 'tan', 'tanh', 'trunc']
    

    展示一下其功能

    >>> math.pi;
    3.141592653589793
    >>> math.e;
    2.718281828459045
    >>> pow(2,3);
    8
    >>> math.sqrt(4);
    2.0
    

    编写了一个helloworld.py的python文件

    #!/user/bin/env python
    #coding:utf-8
    str_a="hello world";
    print(str_a)
    

    在dos中运行。

    Microsoft Windows XP [版本 5.1.2600]
    (C) 版权所有 1985-2001 Microsoft Corp.
    C:\Documents and Settings\Administrator>cd c:\python34
    C:\Python34>python helloworld.py
    hello world
    

    行了,今天就水到这里,别问我,为什么用dos,为什么用xp。 作为一个很早就接触 计算机的人,xp和dos充满着曾经的回忆。windows系统其实一直都是差不多的。

    相关文章

      网友评论

        本文标题:python笔记一 入门py

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