python学习总结(一)
来源:互联网 发布:ubuntu密码忘记了 编辑:程序博客网 时间:2024/06/05 19:49
最近一段时间,看到微博中有几位技术大牛在讨论使用python来实现网络爬虫的实例。心血来潮,也想自己尝试尝试。所以就开始学习了python的基础知识。
由于本人是在Mac电脑中进行python知识的学习,而且没有安装python环境。所以在正式学习之前有以下几个必要步骤需要完成。
1. Mac中安装 HomeBrew: ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2. Mac中安装 Python: brew install python
3. Mac中进入 Python: 直接在终端输入 python
4. 退出 Python: exit() 或者 Ctrl + D
例如在终端上面实现python语法的执行(第3步):
下面就举例说明python的语法使用
Demo1:
# 小明的成绩从去年的72分提升到了今年的85分,
# 请计算小明成绩提升的百分点,并用字符串格式化显示出'xx.x%',只保留小数点后1位:
s1 = 72s2 = 85print '%.1f%%' % ((s2 - s1) * 1.0 / s1 * 100)
Demo2:
# 请用索引取出下面list的指定元素:
L = [ ['Apple', 'Google', 'Microsoft'], ['Java', 'Python', 'Ruby', 'PHP'], ['Adam', 'Bart', 'Lisa']]# 打印Apple:print L[0][0]# 打印Python:print L[1][1]# 打印Lisa:print L[2][2]
Demo3:
# 小明身高1.75,体重80.5kg。请根据BMI公式(体重除以身高的平方)帮小明计算他的BMI指数,并根据BMI指数:
# 低于18.5:过轻
# 18.5-25:正常
# 25-28:过重
# 28-32:肥胖
# 高于32:严重肥胖
# 用if-elif判断并打印结果:
height = 1.75weight = 80.5bmi = weight / height / heightprint bmiif bmi < 18.5:print '过轻'elif bmi >= 18.5 and bmi < 25:print '正常'elif bmi >= 25 and bmi < 28:print '过重'elif bmi >= 28 and bmi <32:print '肥胖'else:print '严重肥胖'
Demo4:
# 请利用循环依次对list中的每个名字打印出Hello, xxx!:
L = ['Bart', 'Lisa', 'Adam']for name in L:print 'Hello, %s!' % name
以上的写法,均可以在终端实现,但如果是定义的一个方法或者一个类的话,就不怎么方便了。这个时候,我们可以考虑将python代码放在一个文件中,然后倒入进来,再执行。
Demo5:
Step One:
将代码写入一个文件中test.python(我使用的是sumlime文本编辑器),如下:
Step Two:
直接在终端执行这个所在的文件 python test.python
Demo5中的文件是直接可以执行的,但如果文件中写入的代码是 方法 或者 类,处理如下:
Demo6:
# 请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程:
# ax2 + bx + c = 0
# 的两个解。
# 提示:计算平方根可以调用math.sqrt()函数:
Step One. 先在一个文件中(Demo666.py),写出python代码:
import mathdef quadratic(a, b, c):if (not isinstance(a, (int, float))) or (not isinstance(b, (int, float))) or (not isinstance(c, (int, float))):raise TypeError('Bad Operand type')else:x1 = (-b + math.sqrt(b * b - 4 * a * c)) / (2 * a)x2 = (-b - math.sqrt(b * b - 4 * a * c)) / (2 * a)return x1, x2
Step Two:
在python环境下, 用from test import my_abs来导入my_abs()函数或者类名,注意test是文件名(不含.py扩展名)
Demo7: 类的基本定义
class Student(object):def __init__(self, name, score, age):# 下面的写法是 公开属性self.name = nameself.score = score# 私有成员变量,外界不能单独访问self.__age = agedef print_score(self):print '%s: %s' % (self.name, self.score)# 可以提供get set方法def setAge(self):self.__age = agedef getAge(self):return self.__age
以上为学习python的基本总结,参考链接:
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000
- Python学习总结(一)
- python学习总结(一)
- python学习总结(一)
- 学习python总结(一)
- python学习(总结一)
- python学习总结(一)
- Python 学习经历(一) :python语法总结
- python libsvm 学习总结系列一
- Python基础学习总结(一)
- python入门学习阶段性总结(一)
- 学习python之路---python小算法总结(一)
- Python学习总结(一) 双Python版本环境配置
- Python学习笔记总结(一)对象和流程语句总结
- Python:Python学习总结
- python+web编程学习总结记录(一)
- Python+Selenium学习遇到的问题总结(一)
- python学习(一)----os模块中常用方法总结
- python 总结(一)
- 选择排序1到10000
- 深入理解Java:注解(Annotation)自定义注解入门
- 欢迎使用CSDN-markdown编辑器
- 利用HttpClient的POST方式发起带参数的请求时,点击注册按钮无反应状态分析
- python socket编程
- python学习总结(一)
- 选择排序法——1到10
- (总结)Nginx配置文件nginx.conf中文详解
- iOS字典转字符串类型,NSDictionary 转 NSString转JsonData
- hammer.js手势
- Android的VectorDrawable与AnimatedVectorDrawable
- Java 基本数据类型的取值范围。
- 红糖水和白糖水
- Android Studio环境下EditText的BUG