为了省钱开始学习python(1)

原创 2015年07月06日 22:19:53

我想建立一个微信平台,但是不是很喜欢PHP,java又要钱,看来学习python,比较靠谱。

python   查看版本
exit()  退出

Python的第一个程序当然是HelloWorld。

print 'HelloWorld'
保存为 .py
进入命令行
chmod +x ./hello.py
python ./hello.py
执行结果。

第一个程序,到这里结束。

python 的加减什么的基本和java是一样一样的。
但是True False 是大写的,
最神奇的是:

print123123’,‘123123123123123 123123123
,可以作为连接符,同时代表一个空格
#  我是注释

raw 字符串
这个和html里面的

<pre></pre>是用的道理,只是这里使用的是 r'    ' 但是只支持单行
如果有多行,需要表示,则使用   r'''     ''' 就可以了
# -*- coding: utf-8 -*-    #设定编码格式
print u'你好'
print u''' 第一行
第二行'''
print ur'''Python 的Unicode字符串支持"中文","日文","韩文"等多种语言'''

List 其实就是数组,但是其不分类型

l ['a',1213,'a]
print l
print l[0] #第一个
print l[2] # 最后一个
print l[-1] # 倒数第一个,最后一个
print l[-3] # 倒数第三个,第一个

append() 在末尾添加
insert(pos,str) 在指定位置添加
pop() 删除最后一个,并返回
pop(pos) 根据索引,删除数据

L[1] = '123'  直接更改,列表的数据

tuple
tuple 是不能改变的

t = ('Adam', 'Lisa', 'Bart')
t[0] 这样访问,同时,没有append(),pop(),insert()等方法
创建tuple时,如果只有没有元素  t()   如果只有一个,就用t=(1,)需要多加一个逗号,否者,解释器,并不知道这代表一个tuple而是把括号当做一个运算符

if

缩进很重要,:代表代码块的开始
score = 75
if score>=60:
    print 'passed'

if-else

score = 55
if score>=60:
    print 'passed'
else:
    print 'failed'

if-elif-else

score = 85

if score>=90:
    print 'excellent'
elif score>=80:
    print 'good'
elif score>=60:
    print 'passed'
else:
    print 'failed'

while

sum = 0
a = 1;
while a<=100:
    if a%2==1:
        sum = sum+a

    a=a+1

print sum

break

sum = 0
x = 1
n = 1
while True:
    sum = sum+x
    if n==20:
        break
    n = n+1
    x = x*2
print sum

continue

sum = 0
x = 0
while True:
    x = x + 1
    if x > 100:
        break
    if x%2==1:
        sum = sum+x
    x = x+1
print sum

多重循环遍历

for x in [ 1,2,3,4,5,6,7,8,9 ]:
    for y in [1,2,3,4,5,6,7,8,9,0]:
        if x<y:
            print 10*x+y

dict

d = {
    'Adam':95,
    'Lisa':85,
    'Bart':59,
    'Paul':75
}
print len(d)

d = {
    'Adam': 95,
    'Lisa': 85,
    'Bart': 59
}
print 'Adam:',d['Adam']
print 'Lisa:',d['Lisa']
print 'Bart:',d['Bart']
if 'Adam' in d:
    print d['Adam']

print d.get('Adam')
print d.get('123')

添加
d = {
    95: 'Adam',
    85: 'Lisa',
    59: 'Bart'
}
print d

d['Paul'] = 72   # 添加
print d

for key in d  # 遍历
    print key

set集合

s = set(['a','b','c'])
print s
s = set(['a','b','c','c'])  # 自动去重复
print s
print len(s)
s = set(['Adam','Lisa','Bart','Paul'])
print s
print 'Adam' in s   # 判断Adam是否在这里面
for key in s    # 进行遍历


s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])
for x in s:
    print x[0],':',x[1]


s = set(['Adam', 'Lisa', 'Paul'])
L = ['Adam', 'Lisa', 'Bart', 'Paul']
for l in L:
    if l in s:
        s.remove(l)
    else:
        s.add(l)
print s

函数的使用
sum

L = []
n = 1
while n<=100:
    L.append(n*n)
    n = n+1

print sum(L)

定义函数

def square_of_sum(L):
    sum = 0
    for l in L:
        sum = sum + l*l

    return sum

print square_of_sum([1, 2, 3, 4, 5])
print square_of_sum([-5, 0, 5, 15, 25])



import math

def quadratic_equation(a, b, c):
    has = b*b - 4*a*c;
    if has>=0:
        return (-b + math.sqrt(has))/(2*a),(-b - math.sqrt(has))/(2*a)
    else:
        return
print quadratic_equation(2, 3, 0)
print quadratic_equation(1, -6, 5)

运行一次返回多值

递归函数
def move(n, a, b, c):
    if n==1:
        print a,'-->',c
        return
    move(n-1,a,c,b)
    print a,'-->',c
    move(n-1,b,a,c)
move(4, 'A', 'B', 'C')

设定函数的默认值
def greet(a='world'):
    print 'Hello,'+a+'.'

greet()
greet('Bart')


传人不同长度的参数
def average(*args):
    sum = 0.0
    if len(args)==0:
        return sum
    for x in args:
        sum = sum+x
    sum = sum/len(args)
    return sum

print average()
print average(1, 2)
print average(1, 2, 2, 3, 4)


list 截取
L = range(1, 101)

print L[:10]
print L[2::3]
print L[4:50:5]

首字母变大
def firstCharUpper(s):
    return s[:1].upper()+s[1:]

print firstCharUpper('hello')
print firstCharUpper('sunday')
print firstCharUpper('september')


循环迭代
for i in range(1,101):
    if not i%7:
        print i

Dict 迭代值
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }

sum = 0.0
for x in d.itervalues():
    sum = sum + x
sum = sum/len(d)
print sum


键 值 迭代
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }

sum = 0.0
for k, v in d.iteritems():
    sum = sum + v
    print str(k)+':'+str(v)
print 'average', ':', sum/len(d)


直接生产 list
print [x*(x+1) for x in range(1,100,2)]
[2, 12, 30, 56, 90, 132, 182, 240, 306, 380, 462, 552, 650, 756, 870, 992, 1122, 1260, 1406, 1560, 1722, 1892, 2070, 2256, 2450, 2652, 2862, 3080, 3306, 3540, 3782, 4032, 4290, 4556, 4830, 5112, 5402, 5700, 6006, 6320, 6642, 6972, 7310, 7656, 8010, 8372, 8742, 9120, 9506, 9900]


d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
def generate_tr(name, score):
    if score<60:
        return '<tr><td>%s</td><td style="color:red">%s</td></tr>' % (name, score)

    return '<tr><td>%s</td><td>%s</td></tr>' % (name, score)

tds = [generate_tr(name,score) for name, score in d.iteritems()]
print '<table border="1">'
print '<tr><th>Name</th><th>Score</th><tr>'
print '\n'.join(tds)
print '</table>'



def toUppers(L):
    return [x.upper() for x in L if isinstance(x,str)]
                                        #判断是不是字符串
print toUppers(['Hello', 'world', 101])


多级别嵌套
print [m+n for m in 'ABC' for n in '123']
print [100*a+10*b+c for a in range(1,10) for b in range(10) for c in range(10) if c==a]
版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

Re:从零开始的Python2.7学习(1)

Python基础Python以# 开头的语句为注释,当语句以: 为结尾的时候,缩进的代码会被视为一个代码块.Python的数据类型有整数,浮点数,字符串,布尔值.Python允许用”’…”’的格式表示...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)