python [part two]

Posted garrett7

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python [part two]相关的知识,希望对你有一定的参考价值。

1   安装python

 1 Windows
 2 1、下载安装包
 3     https://www.python.org/downloads/
 4 2、安装
 5     默认安装路径:C:python27
 6 3、配置环境变量
 7     【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】
 8     如:原来的值;C:python27,切记前面有分号
 9 
10 
11 linux
12 无需安装,原装Python环境
13   
14 ps:如果自带2.6,请更新至2.7

 

 

2  hello world

1 # -*- coding: utf-8 -*-
2 
3 print("你好,世界")

   python 代码文件以 .py 结尾。  

# -*- coding: utf-8 -*-  作为字符集说明防止乱码
执行代码方式 可以用 cmd命令窗口 python hello.py
或 使用IDE开发 pycharm

指定解释器

  上一步中执行 python hello.py 时,明确的指出 hello.py 脚本由 python 解释器来执行。

  如果想要类似于执行shell脚本一样执行python脚本,例: ./hello.py ,那么就需要在 hello.py 文件的头部指定解释器:

#!/usr/bin/env python
  
print "hello,world"

如此一来,执行: ./hello.py 即可。




3 var 变量
 1 # -*- coding: utf-8 -*-
 2 
 3 
 4 name = "Garrett"
 5 
 6 name2 = name
 7 
 8 print("My name is ",name2)
 9 
10 name = "gary"
11 
12 print(name2)
13 
14 
15 
16 # 约定大写 代表常量
17 PIE = "3.14"
18 
19 print("你好,世界")

变量定义的规则:

      • 变量名只能是 字母、数字或下划线的任意组合
      • 变量名的第一个字符不能是数字
      • 以下关键字不能声明为变量名
        [‘and‘, ‘as‘, ‘assert‘, ‘break‘, ‘class‘, ‘continue‘, ‘def‘, ‘del‘, ‘elif‘, ‘else‘, ‘except‘, ‘exec‘, ‘finally‘, ‘for‘, ‘from‘, ‘global‘, ‘if‘, ‘import‘, ‘in‘, ‘is‘, ‘lambda‘, ‘not‘, ‘or‘, ‘pass‘, ‘print‘, ‘raise‘, ‘return‘, ‘try‘, ‘while‘, ‘with‘, ‘yield‘]

4 输入 input
 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 # By   Garrett
 4 
 5 # 格式化输出
 6 username = input("username:")
 7 password = input("password:")
 8 
 9 
10 print("username :",username)
11 print("password :",password)
12 
13 info = ‘‘‘
14 ------info of ----------
15 name : ‘‘‘+username+‘‘‘
16 password : ‘‘‘+password
17 
18 print(info)
19 
20 infos = ‘‘‘
21 ------infos-------
22 name:%s
23 password:%s
24 ‘‘‘ % (username,password)
25 print(infos)
26 # %s  代表string   %d 必须是数字 num
27 # python  是强数据类型语言    转换类型需要用函数
28 
29 info3 = ‘‘‘
30 ---- info 3 -----
31 name: {_username}
32 pass: {_password}
33 ‘‘‘.format(_username =username,_password=password)
34 print(info3)

  当行注视:# 被注释内容

  多行注释:""" 被注释内容 """

        ‘‘‘  ‘‘‘  除了可以作为注释  也可以作为长字符串  里面的内容会保持其格式。

  字符串后面跟.format() 可以用来往字符串中传参数,放变量。 例如:

1 username = input("username:")
2 password = input("password:")
3 
4 info3 = ‘‘‘
5 ---- info 3 -----
6 name: {_username}
7 pass: {_password}
8 ‘‘‘.format(_username =username,_password=password)
9 print(info3)

 

输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即:

1 import getpass
2 
3 _name = sys
4 _pwd = sys
5 
6 username = input("username:")
7 password = getpass.getpass("password:")
8 9 # getpass 这个在pycharm里不好使

 

 

 

5  if 判断
 1 _name = sys
 2 _pwd = sys
 3 
 4 username = input("username:")
 5 
 6 password = input("password")
 7 
 8 
 9 if _name == username  and _pwd == password:
10     print("success! Welcome {_user}".format(_user = username))
11 else:
12     print("error!")

  python 没有大括号 所以 if判断的缩进是严格要求必须缩进的。

  语句关键词为 if     elif    else

  

 

 

6  while 循环

 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 # By   Garrett
 4 
 5 
 6 age_of_boy = 56
 7 
 8 count = 0
 9 
10 while count < 3 :
11     age = int(input("age:"))
12     count+=1
13     if age_of_boy == age :
14         print(right!)
15         break
16     elif age_of_boy > age :
17         print(low)
18     else:
19         print(high)
20 else:
21     print(3次机会用完)

  while 循环 也要严格的格式缩进要求     

  else 不是必须的 可以省略

  break 用来 终止跳出当前循环

 

7   for 循环

 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 # By   Garrett
 4 
 5 for i in range(0,10):
 6     if i < 3:
 7         print(i)
 8     else:
 9         continue
10     print(haha+str(i))

      for 循环格式如上

  continue 用来直接进入下一次循环

 

8    模块

 

 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 # By   Garrett
 4 
 5 
 6 import sys
 7 import  os
 8 
 9 # 打印文件相对路径和传入的参数 
10 # 这个脚本把执行脚本时传递的参数获取到了
11 print(sys.argv)
12 
13 
14 os.system("df -h") #调用系统命令
15 
16 
17 os.system(‘‘.join(sys.argv[1:])) #把用户的输入的参数当作一条命令交给os.system来执行
18 
19 
20 # cmd_res = os.system(‘dir‘)     #执行命令 不保存结果
21 cmd_res = os.popen("dir")
22 cmd2 = os.popen("dir").read()
23 
24 print("--->",cmd_res)

 

  你会发现,上面自己写的tab.py模块只能在当前目录下导入,如果想在系统的何何一个地方都使用怎么办呢? 此时你就要把这个tab.py放到python全局环境变量目录里啦,基本一般都放在一个叫 Python/2.7/site-packages 目录下,这个目录在不同的OS里放的位置不一    样,用 print(sys.path) 可以查看python环境变量列表。

 



9 数据类型
1、数字

2 是一个整数的例子。
长整数 不过是大一些的整数。
3.23和52.3E-4是浮点数的例子。E标记表示10的幂。在这里,52.3E-4表示52.3 * 10-4。
(-5+4j)和(2.3-4.6j)是复数的例子,其中-5,4为实数,j为虚数,数学中表示复数是什么?。


int(整型)

  在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
  在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
long(长整型)
  跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。
  注意,自从Python2.2起,如果整数发生溢出,Python会自动将整数数据转换为长整数,所以如今在长整数数据后面不加字母L也不会导致严重后果了。
float(浮点型)
      先扫盲 http://www.cnblogs.com/alex3714/articles/5895848.html 
  浮点数用来处理实数,即带有小数的数字。类似于C语言中的double类型,占8个字节(64位),其中52位表示底,11位表示指数,剩下的一位表示符号。
complex(复数)
  复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。
注:Python中存在小数字池:-5 ~ 257
 

2、布尔值

  真或假

  1 或 0

3、字符串

"hello world"

万恶的字符串拼接:

  python中的字符串在C语言中体现为是一个字符数组,每次创建字符串时候需要在内存中开辟一块连续的空,并且一旦需要修改字符串的话,就需要再次开辟空间,万恶的+号每出现一次就会在内从中重新开辟一块空间。

字符串格式化输出

1
2
3
4
name = "alex"
print "i am %s " % name
  
#输出: i am alex

PS: 字符串是 %s;整数 %d;浮点数%f

字符串常用功能:
  • 移除空白
  • 分割
  • 长度
  • 索引
  • 切片
4、列表
创建列表:
1
2
3
name_list = [‘alex‘‘seven‘‘eric‘]
name_list = list([‘alex‘‘seven‘‘eric‘])

基本操作:

  • 索引
  • 切片
  • 追加
  • 删除
  • 长度
  • 切片
  • 循环
  • 包含
5、元组(不可变列表)
创建元组:
1
2
3
ages = (1122334455)
ages = tuple((1122334455))
 
6、字典(无序)
创建字典:
1
2
3
person = {"name""mr.wu"‘age‘18}
person = dict({"name""mr.wu"‘age‘18})

常用操作:

  • 索引
  • 新增
  • 删除
  • 键、值、键值对
  • 循环
  • 长度
 
10  数据运算
算数运算:

技术图片

比较运算:

技术图片

赋值运算:

技术图片

逻辑运算:

技术图片

成员运算:

技术图片

身份运算:

技术图片

位运算:

技术图片

*按位取反运算规则(按位取反再加1)   详解http://blog.csdn.net/wenxinwukui234/article/details/42119265

 

运算符优先级:

技术图片

 

以上是关于python [part two]的主要内容,如果未能解决你的问题,请参考以下文章

机器学习工程师 - Udacity 非监督学习 Part Two

Mark Compact GC (Part two :Two-Finger)

快速排序(part two)

Stanford机器学习笔记-5.神经网络Neural Networks (part two)

Copying GC (Part two :Multi Space Copying GC)

Python ---- Part 5