Python 笔记 Code 方面自己看

import threading
import paramiko
import subprocess

def ssh_command(ip,user,passwd,command):
    client = paramiko.SSHClient()
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    client.connect(ip,username=user,password=passwd)
    ssh_session = client.get_transport().open_session()
    if ssh_session.active:
        ssh_session.exec_command(command)
        print ssh_session.recv(1024)
    return
ssh_command('115.28.71.34','1','1','id')

    print ('\\\\\\\\\t\\\\\\')
print ('\\t\\\\\\')

print ('\\a\\')
print ('\\x\\')

print r'''Python is created by \"Guido\".
It is free and easy to learn.
Let's start learn Python in imooc!'''

//前面加个R 可自动 \  格式化一些特殊符号



a = 'python'
print 'hello,', a or 'world'

b = '1'
print 'hello,', b or 'world'    //or  可以选择哪个真假输出  输出值为真的, 或者有值的 攒钱这么理解

L = [1, 2, 3, 4, 5, 6]
print L[4]
A = []
print type(A)
B =''
print type(B)
C = 123
print type(C)
D = ['x48d','R',False,'123']
print type(D[2])            
print type(D[-1])
D.append('value')   //向list最后添加一个数据
D.insert(0,'vlaue')  //向第一行添加数据     
D.pop('可选value')   //删除list的一个value 可指定value 删除那一个
            // list 就是数组 可存储 str int bool 各种数据类型

-------------------脑残分割线--------------------
T = (1,2,3,4,5)   tuple 是一种有序列表,一旦创建完毕就不能修改了。 
P = (1)  //这是int型,因为他的格式和普通赋值方式不一样 => P = (1,) 即可变成Tuple类型

X48D = (1,2,['HELLO','WORD'])
print X48D[2][1]        // “可变的tuple 其实就是个二维数组
X48D = [1,2,('hello','word')]
X48D = ([1123],[12313])
X48D = (123,123,(123,412))


L = [75, 92, 59, 68]
sum = 0
for name in L:              //for  name的value 是逐个赋值给L 
    sum += name
    print sum

print sum / 4               //for 循环输出平均数 

X48D = (1,2,3,4,5,6)
for value in X48D:
    print value

---------------------------------------

A = 100
B = 1
while A > B :
    if B/2==0:
        print B
    B=B+1                           while 循环 这个不像for那么坑了,是根据条件判断循环的



a = 0
b = 1
while True:
    a = a + b
    b = b + 1
    if b > 100:
        break
print a                // while一直true  if 条件一直不成立 while 一直加1 成立后 break 退出循环


sum = 0 
x = 1
n = 1
while True:
    if n > 20:
        break
    sum = sum + x
    x = x * 2
    n = n + 1
print sum                   //首先判断了那个if 是判断是否推出, sum = 

sum = 0
x = 
while True:
    x = x + 1
    if x > 100:
        break
    if x % 2 == 0:
        continue
    print x
print sum               //continue 退出本次循环, 继续下次循环   break 彻底退出循环


for A in [1,2,3,4,5,6,7,8,9]:
    for B in [0,1,2,3,4,5,6,7,8,9]:
        for C in ['.6','.6','.6','.6','.6','.6']:
            print A,B,C          // 多循环
-------------------------------------------------------
Dict 和 Set 类型

dict 特点 // 查找速度快, 无论dict有10个元素还是10万个元素,查找速度都一样.
而 list 的查找速度随着元素增加而逐渐下降
不过 dict 查询是有代价的, 占用内存大, 还会浪费很多内容,list 正好向反占用内存小,
但是查找速度慢.
由于dict是按照key = 建名 key不能重复.
而且存储的 键->值 不是按照规律排序的,随机的  所以不能用 Dict 建立有序列表
可以建立

demo_dict = {
    'whoami' : 'x48d',
    'good' : 'mo',
    'x48d' : 'lala'             字典 
}                           // 定义Dict 

如何判断 Dice 主键 存在和输出
if '键名' in 'dict名':
    print '存在'
else:
    print '不存在'    // 判断键名

demo_dict.get('键名')   //如果存在键名,返回键名,不存在返回none


D = {
    'hellow' : 'demo',
    'good' : 'aaaaa'
}
D['hellow'] = 'hello word'  //修改 dict D 的键 hellow 的值为 hello word


for a in D:
    print D[a]              //循环输出dice 所有字典的value

------------(SET)----------------------------------------------------
set 内部结构和dist很像,但不像dist是键值的存储
    任何可变变量不能放入set 速度要比dict快
    由于set存储的是一组不重复的无序元素,因此,更新set主要做两件事:
    一是把新的元素添加到set中,二是把已有元素从set中删除。



demo_set = set (['Admin','Demo','Hello'])
print 'Admin' in demo_set       // 判断Admin是否存在于demo_set内返回bool值
                                // set类型是严格区分大小写的

a = input
if a in demo_set:
    print 'True'
else: 
    print 'False'       //最简单的可以判断用户的输入是否正确...

s = set(['Adam', 'Lisa', 'Paul'])
L = ['Adam', 'Lisa', 'Bart', 'Paul']
for x in L:
    if x in s:
        s.remove(x)
    else:
        s.add(x)
print s                         //这段代码告诉我们 remove之前要判断

------函数----------------------------------------------------------

L = []
x = 1
while x <= 100:
    L.append(x * x)
    x = x + 1
print sum(L)         // 怎么调用函数的事例,取总



def fuck(L):
    print '123'
    return L,1
fuck('123')         //定义函数 return None 返回为空可以简写为return



import math
def demo_math(a,b,c):
    t=math.sqrt(b * b - 4 * a * c)
    return (-b + t) / (2 * a),(-b -t)/(2*a)

print demo_math(1,15,1)         //进一步熟悉函数的调用




def fact(n):
    if n==1:
        return 1
    return n * fact(n - 1)
print fact(5)                   //递归函数 //函数本身调用自己的函数体


===> fact(5)                    //楼上代码的工作模式
===> 5 * fact(4)
===> 5 * (4 * fact(3))
===> 5 * (4 * (3 * fact(2)))
===> 5 * (4 * (3 * (2 * fact(1))))
===> 5 * (4 * (3 * (2 * 1)))
===> 5 * (4 * (3 * 2))
===> 5 * (4 * 6)
===> 5 * 24
===> 120                    

def greet (name = 'world'):
    print 'hello,' + name + '.'
greet('good')                   //函数可以定义默认属性

def demo(*hidemo):
    print hidemo
#   return
demo('ads','dsad','mmmmmm')     //可接受可变参数可以理解为一个 tuple


L = range(1,101)
print L[1:10] //取指定范围
print L[::10] //每隔10个执行一次
 for a in L:
    if a%3==0 and a%5==0 and a < 50:
    print a

L = range(1,101)
#print L[:-50]
print L[-50:-51]        //倒叙切片




a = 'abcdefg'
print a[::3]

标签: none

添加新评论