资讯专栏INFORMATION COLUMN

python learn 01 basic

MageekChiu / 1937人阅读

摘要:输入的模块上使用。我们看到它包含一个庞大的属性列表。默认地,它返回当前模块的属性列表。

Python Learn Part

More_Info

Content List

1.Python Introduce

1.1 python REPL

1.2 python helloworld.py

1.3 python help()

1.4 to python_string

1.5 difference between input and raw_input

2.Python Preliminary program

2.1 Operators and Expression

2.2 python control flow

3.function

3.1 local var

3.2 global var

3.3 func_key

3.4 DocStrings

4.Module

4.1 sys module

4.2 from..import

4.3 name

4.4 dir()

1. Python Introduce

python 少有的一种可以称得上即简单又功能强大的编程语言

python 代表简单主义思想的语言

➜  python git:(master) python -V
Python 2.7.10
➜  python git:(master)
1.1 python REPL
➜  python git:(master) python
Python 2.7.10 (default, Jul 14 2015, 19:46:27)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 2**3 or pow(2, 3)
8
>>> x = input("x:")
x:5
>>> print "hello ", x
hello  5
>>> print 3
3
>>> print "3"
3
>>> 0xAF
175
>>> 010
8
>>> round(1.0/3.0) #四舍五入
0.0
>>> round(1.0/2.0)
1.0
>>> import math
>>> math.floor(32.9)
32.0
>>> print r"C:
owhere"""    # 解决最后一个字符是 "" 的情况! 完美解决  
C:
owhere  
>>> print u"hello, world"      # Unicode 字符串, 在python3.0中,所有的字符串都是 Unicode 字符串  
hello, world  
>>>
1.2 python helloworld.py
#!/usr/bin/python
# Filename : helloworld.py
print "Hello World"
1.3 python help()
>>> help()

Welcome to Python 2.7!  This is the online help utility.

help> input
Help on built-in function input in module __builtin__:

input(...)
    input([prompt]) -> value

        Equivalent to eval(raw_input(prompt)).
        (END)
1.4 to python_string

str

repr

backquote

>>> ""hello world" she said"  
""hello world" she said"  
>>> "hello world"  
"hello world"  
>>> 10000L  
10000L  
>>> print "hello world"  
hello world  
>>> print 10000L  
10000  
>>> print str("Hello world")  
Hello world  
>>> print str(10000L)  
10000  
1.5 input and raw_input
>>> raw_input("shuru : ")  
shuru : 6  
"6"  
>>> input("shuru : ")  #默认为合法的python表达式  
shuru : 5  
5   
2. Python Preliminary program
>>> i = 5
>>> i = i + 1
>>> print 
... i
6
>>> print i
6
>>>
2.1 Operators and Expression

operator precedence

Expression

#!/usr/bin/python
# Filename: expression.py

length = 5
breadth = 2
area = length * breadth
print "Area is", area
print "Perimeter is", 2 * (length + breadth)
2.2 python control flow
#!/usr/bin/python
# Filename: while.py

number = 23
running = True

while running:
  guess = int(raw_input("Enter an integer : "))

  if guess == number:
    print "Congratulations, you guessed it." 
    running = False # this causes the while loop to stop
  elif guess < number:
    print "No, it is a little higher than that" 
  else:
    print "No, it is a little lower than that" 
else:
  print "The while loop is over." 
  # Do anything else you want to do here

print "Done"

break, continue

#!/usr/bin/python
# Filename: continue.py

while True:
  s = raw_input("Enter something : ")
  if s == "quit":
    break
  if len(s) < 3:
    continue
  print "Input is of sufficient length"
  # Do other kinds of processing here...
3. function 3.1 local var
#!/usr/bin/python
# Filename: func_local.py

def func(x):
    print "x is", x
    x = 2
    print "Changed local x to", x

x = 50
func(x)
print "x is still", x

Output

$ python func_local.py
x is 50
Changed local x to 2
x is still 50

3.2 global var
#!/usr/bin/python
# Filename: func_global.py

def func():
  global x

  print "x is", x
  x = 2
  print "Changed local x to", x

x = 50
func()
print "Value of x is", x

Output

$ python func_global.py
x is 50
Changed global x to 2
Value of x is 2

3.3 func_key
#!/usr/bin/python
# Filename: func_key.py

def func(a, b=5, c=10):
  print "a is", a, "and b is", b, "and c is", c

  func(3, 7)
  func(25, c=24)
  func(c=50, a=100)

Output

$ python func_key.py
a is 3 and b is 7 and c is 10
a is 25 and b is 5 and c is 24
a is 100 and b is 5 and c is 50

3.4 DocStrings
# #!/usr/bin/python
# Filename: func_doc.py

def printMax(x, y):
  """Prints the maximum of two numbers.

    The two values must be integers."""
  x = int(x) # convert to integers, if possible
  y = int(y)

  if x > y:
    print x, "is maximum"
  else:
    print y, "is maximum"
    return y

printMax(3, 5)
print printMax.__doc__

output

$ python func_doc.py
5 is maximum
Prints the maximum of two numbers.

    The two values must be integers.
4. Module 4.1 sys 模块
#!/usr/bin/python
# Filename: using_sys.py

import sys

print "The command line arguments are:"
for i in sys.argv:
  print i

print "

The PYTHONPATH is", sys.path, "
"
4.2 from..import

yourself module

#!/usr/bin/python
# Filename: mymodule.py

def sayhi():
    print "Hi, this is mymodule speaking."

version = "0.1"

# End of mymodule.py

mymodule_demo.py

#!/usr/bin/python
# Filename: mymodule_demo.py

import mymodule

mymodule.sayhi()
print "Version", mymodule.version

from..import..

#!/usr/bin/python
# Filename: mymodule_demo2.py

from mymodule import sayhi, version
# Alternative:
# from mymodule import *

sayhi()
print "Version", version
4.3 __name__
#!/usr/bin/python
# Filename: using_name.py

if __name__ == "__main__":
    print "This program is being run by itself"
else:
    print "I am being imported from another module"

每个Python模块都有它的__name__,如果它是"__main__",这说明这个模块被用户多带带运行,我们可以进行相应的恰当操作。

4.4 dir()
$ python
>>> import sys
>>> dir(sys) # get list of attributes for sys module
["__displayhook__", "__doc__", "__excepthook__", "__name__", "__stderr__",
"__stdin__", "__stdout__", "_getframe", "api_version", "argv",
"builtin_module_names", "byteorder", "call_tracing", "callstats",
"copyright", "displayhook", "exc_clear", "exc_info", "exc_type",
"excepthook", "exec_prefix", "executable", "exit", "getcheckinterval",
"getdefaultencoding", "getdlopenflags", "getfilesystemencoding",
"getrecursionlimit", "getrefcount", "hexversion", "maxint", "maxunicode",
"meta_path","modules", "path", "path_hooks", "path_importer_cache",
"platform", "prefix", "ps1", "ps2", "setcheckinterval", "setdlopenflags",
"setprofile", "setrecursionlimit", "settrace", "stderr", "stdin", "stdout",
"version", "version_info", "warnoptions"]
>>> dir() # get list of attributes for current module
["__builtins__", "__doc__", "__name__", "sys"]
>>>
>>> a = 5 # create a new variable "a"
>>> dir()
["__builtins__", "__doc__", "__name__", "a", "sys"]
>>>
>>> del a # delete/remove a name
>>>
>>> dir()
["__builtins__", "__doc__", "__name__", "sys"]
>>>

输入的sys模块上使用dir。我们看到它包含一个庞大的属性列表。

dir() , 默认地,它返回当前模块的属性列表。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/37910.html

相关文章

  • Java learn 01 Java basic

    摘要:程序运行机制两种核心机制垃圾收集机制虚拟机可以理解成一个以字节码为机器指令的虚拟机机制屏蔽了底层运行平台的差别实现了一次编译随处运行。采用编码全球语言统一编码每个字符占两个字节面向过程约瑟夫环面向对象约瑟夫环 Chap 0 Preface Java Basic Content List Java data type、 标识符、运算符、表达式和语句、分支、循环、方法 OO Except...

    EastWoodYang 评论0 收藏0
  • python开发-实现RabbitMQ的消息队列

    摘要:最近在研究做消息队列时,顺便看了一下做消息队列的实现。远程连接时需要认证实例化连接对象实例化链接参数对象创建新的通道模式向绑定到指定的中发送消息,消费者从中取出数据,类似于广播模式发布订阅模式。 最近在研究redis做消息队列时,顺便看了一下RabbitMQ做消息队列的实现。以下是总结的RabbitMQ中三种exchange模式的实现,分别是fanout, direct和topic。 ...

    EastWoodYang 评论0 收藏0
  • 2018 AI、机器学习、深度学习与 Tensorflow 相关优秀书籍、课程、示例链接集锦

    摘要:机器学习深度学习与自然语言处理领域推荐的书籍列表人工智能深度学习与相关书籍课程示例列表是笔者系列的一部分对于其他的资料集锦模型开源工具与框架请参考。 showImg(https://segmentfault.com/img/remote/1460000014946199); DataScienceAI Book Links | 机器学习、深度学习与自然语言处理领域推荐的书籍列表 sho...

    wenshi11019 评论0 收藏0
  • 2018 AI、机器学习、深度学习与 Tensorflow 相关优秀书籍、课程、示例链接集锦

    摘要:机器学习深度学习与自然语言处理领域推荐的书籍列表人工智能深度学习与相关书籍课程示例列表是笔者系列的一部分对于其他的资料集锦模型开源工具与框架请参考。 showImg(https://segmentfault.com/img/remote/1460000014946199); DataScienceAI Book Links | 机器学习、深度学习与自然语言处理领域推荐的书籍列表 sho...

    paulquei 评论0 收藏0

发表评论

0条评论

MageekChiu

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<