笨办法学python3第五版,笨方法学 python 笔记

本篇文章给大家谈谈笨办法学python第五版百度云,以及笨办法学python3第五版,希望对各位有所帮助,不要忘了收藏本站喔。

Source code download: 本文相关源码

1.#

井号有很多的英文名字,例如:’octothorpe(八角帽)’,’pound(英镑符)’, ‘hash(电话的#键)’,

‘mesh(网)’ 等。

2.为什么 % 是求余数符号,而不是百分号?

很大程度上只是因为涉及人员选择了这个符号而已不学python可以学c语言吗。一般而言它是百分号没错,就跟 100% 表示

百分之百一样。在编程中除法我们用了 /,而求余数又恰恰选择了 % 这个符号,仅此而已。

3.%* 是怎么工作的?

换个说法就是“X 除以 Y 还剩余 J”,例如“100 除以 16 还剩 4”。 % 运算的结果就是 J 这部

分。

4.格式化字符

在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%,括号可以省略。

字符串格式化符号
%c 格式化字符及其ASCII码
%s 格式化字符串
%d 格式化整数
%u 格式化无符号整型
%o 格式化无符号八进制数
%x 格式化无符号十六进制数
%X 格式化无符号十六进制数(大写)
%f 格式化浮点数字,可指定小数点后的精度
%e 用科学计数法格式化浮点数
%E 作用同%e,用科学计数法格式化浮点数
%g %f和%e的简写
%G %f 和 %E 的简写
%p 用十六进制数格式化变量的地址

格式化操作符辅助指令
符号 功能
* 定义宽度或者小数点精度
- 用做左对齐
+ 在正数前面显示加号( + )
在正数前面显示空格
# 在八进制数前面显示零(‘0’),在十六进制前面显示’0x’或者’0X’(取决于用的是’x’还是’X’)
0 显示的数字前面填充0而不是默认的空格
% ‘%%‘输出一个单一的’%’
(var) 映射变量(字典参数)
m.n. m是显示的最小总宽度,n是小数点后的位数(如果可用的话)

5.%r%s 有什么不同?

%r 用来做 debug 比较好,因为它会显示变量的原始数据(raw data),而其它的符

号则是用来向用户显示输出的。

6.单引号双引号问题
formatter = "%r %r %r %r"

print (formatter % (1, 2, 3, 4))
print (formatter % ("one", "two", "treee", "four"))
print (formatter % (True, False, True, False))
print (formatter % (formatter, formatter, formatter, formatter))
print (formatter % (
		"I had this thing.",
		"That you could type up right.",
		"But it didn't sing.",
		"So I said goodnight."
		))

"""
'one' 'two' 'treee' 'four'
True False True False
'%r %r %r %r' '%r %r %r %r' '%r %r %r %r' '%r %r %r %r'
'I had this thing.' 'That you could type up right.' "But it didn't sing." 'So I said goodnight.'
[Finished in 0.4s]
"""

“But it didn’t sing.” 有didn’t所以输出是双引号的。

7.input和raw_input

input只接受数字

raw_input字符串来看待,返回字符串

8.文件读写

每次你运行 f.seek(0) 你就回到了文件的开始,而运行f.readline() 则会读取文件的一行

9.加减乘除问题
def add(a, b, c, d):
	print ("%d + %d / %d - %d" % (a, b, c, d))
	return a+b/c-d


age = add (24, 34, 100, 1023)
print ("age: %d" % age)

"""
24 + 34 / 100 - 1023
age: -998
[Finished in 0.2s]
"""

10.class()与class(object)的区别

在python2中,class(object)定义时,class继承了object()的属性;

在python3中,class()默认继承了object();

object是继承的意思,面向对象语言中都有这样一种特性。继承,指一个对象直接使用另一对象的属性和方法。

11.继承
class Parent(object):
	def override(self):
		print ("PARENT override()")
	def implicit(self):
		print ("PARENT implicit()")
	def altered(self):
		print ("PARENT altered()")

class Child(Parent):
 
	def override(self):
		print ("CHILD override()")
	def altered(self):
		print ("CHILD, BEFORE PARENT altered()")
		super(Child, self).altered()
		print ("CHILD, AFTER PARENT altered()")

dad = Parent()
son = Child()
dad.implicit()
son.implicit()
dad.override()
son.override()
dad.altered()
son.altered()



"""
PARENT implicit()
PARENT implicit()

PARENT override()
CHILD override()

PARENT altered()

CHILD, BEFORE PARENT altered()
PARENT altered()
CHILD, AFTER PARENT altered()
[Finished in 0.2s]
"""

一共三种情况

implicit()隐式继承,默认跟随父类

override()重写,子类重写,覆写

altered() 覆写了 Parent.altered ,实际运行的是 Child.altered

super(Child, self).altered()

12.合成
class Other(object):
     def override(self):
         print "OTHER override()"
     def implicit(self):
         print "OTHER implicit()"
     def altered(self):
         print "OTHER altered()"

class Child(object):
     def __init__(self):
         self.other = Other()
	def implicit(self):
         self.other.implicit()
 
     def override(self):
         print "CHILD override()"
     def altered(self):
         print "CHILD, BEFORE OTHER altered()"
         self.other.altered()
         print "CHILD, AFTER OTHER altered()"


son = Child()
son.implicit()
son.override()
son.altered()

13.第一个网站

安装lpthw.web------pip install lpthw.web

13.1 python软件包安装

1.pip – http://pypi.python.org/pypi/pip

2.distribute – http://pypi.python.org/pypi/distribute

3.nose – http://pypi.python.org/pypi/nose/

4.virtualenv – http://pypi.python.org/pypi/virtualenv

整理出来

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py
pip install distribute==0.7.3
pip install nose
pip install virtualenv
13.2 创建hello world项目
$ cd projects
$ mkdir gothonweb
$ cd gothonweb
$ mkdir bin gothonweb tests docs templates
$ touch gothonweb/__init__.py
$ touch tests/__init__.py

创建bin/app.py

import web
urls = (
 '/', 'index'
)
app = web.application(urls, globals())
class index:
 	def GET(self):
 	greeting = "Hello World"
 	return greeting

if __name__ == "__main__":
 app.run()

到bin上一级目录运行

$ python bin/app.py

到网页去看 http://localhost:8080/

会发现

$ python bin/app.py
http://0.0.0.0:8080/
127.0.0.1:59542 - - [13/Jun/2011 11:44:43] "HTTP/1.1 GET /" - 200 OK
127.0.0.1:59542 - - [13/Jun/2011 11:44:43] "HTTP/1.1 GET /favicon.ico" - 404 Not
Found
13.3 进阶使用模版

创建一个 templates/index.html 文件

内容如下

$def with (greeting)

<html>
        <head>
          <title>Gothons Of Planet Percal #25</title>
        </head>
        <body>

        $if greeting:
                I just wanted to say <em style="color: green; font-size:2em;">$greeting</em>.
        $else:
                <em>Hello</em>, world!

        </body>
</html>

修改 bin/app.py

import web

urls = (
 '/', 'Index'
)

app = web.application(urls, globals())

render = web.template.render('templates/')

class Index(object):
 def GET(self):
        greeting = "Hello World"
        return render.index(greeting = greeting)

if __name__ == "__main__":
 app.run()

好了,去网页查看

在这里插入图片描述

13.4 表单(from)

修改 bin/app.py

import web

urls = (
 '/', 'Index'
)

app = web.application(urls, globals())

render = web.template.render('templates/')

class Index(object):
 def GET(self):
        form = web.input(name="Nobody")
        greeting = "Hello, %s" % form.name
        return render.index(greeting = greeting)

if __name__ == "__main__":
 app.run()

测试

在这里插入图片描述

接下来,将浏览器的地址改成 http://localhost:8080/?name=Frank,

在这里插入图片描述

13.5 表单多个参数

多个参数,修改bin/app.py

import web
 
urls = (
    '/','index',
)
app = web.application(urls, globals())
render = web.template.render('templates/')
 
class index(object):
    def GET(self):
        form = web.input(name="Nobody", greet=None)
        if form.greet:
            greeting = "Hello %s, %s"%(form.name, form.greet)
            return render.index(greeting=greeting)
        else:
            return "ERROR:GREET IS REQUIRED!"
 
if __name__=="__main__":
    app.run()

测试一个参数

在这里插入图片描述

测试两个参数

在这里插入图片描述

13.6 创建HTML表单

创建templates/hello_form.html

<html>
    <head>
        <meta charset="UTF-8">
        <title>Hello</title>
    </head>
    <body>
    <form action="/" method="POST">
        A Greeting:<input type="text" name="greet">
        <br/>
        Your Name:<input type="text" name="name">
        <br/>
        <input type="submit">
    </form>
 
    </body>
</html>

修改bin/app.py

import web
 
urls = (
    '/','index',
)
app = web.application(urls, globals())
render = web.template.render('templates/')
 
class index(object):
    def GET(self):
        return render.hello_form()
 
    def POST(self):
        form = web.input(name="Nobody", greet="Hello")
        greeting = "%s, %s"%(form.name, form.greet)
        return render.index(greeting=greeting)
 
if __name__=="__main__":
    app.run()

测试

在这里插入图片描述

输入值

在这里插入图片描述

 
 
 
参考文献:《笨方法学习python》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值