了解python底层(需要C基础) :python源码剖析

一、python安装

参考:https://www.cnblogs.com/uncleyong/p/10778792.html

编写:hello world

  1. C:\Users\qzcsbj>python
  2. Python 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 18:41:36) [MSC v.1900 64 bit (AMD64)]
  3. on win32
  4. Type "help", "copyright", "credits" or "license" for more information.
  5. >>> print('hello python')
  6. hello python
  7. >>>

命令行窗口关闭了,代码就没有了,所以,一般使用的ide是Sublime Text或者pycharm。

二、pip基本用法

pip类似RedHat里面的yum,安装python包非常方便。

安装完python3后,已经自带pip工具

pip基本用法如下:

  1. 安装
  2. pip install Django
  3.  
  4. 指定版本安装(可以升级或者降低版本)
  5. pip install Django==1.11.1
  6.  
  7. 查看已安装的包
  8. pip show --files Django
  9.  
  10. 查看哪些需要更新
  11. pip list --outdated
  12.  
  13. 升级包
  14. pip install --upgrade Django
  15.  
  16. 卸载包
  17. pip uninstall Django
  18.  
  19. 列出已安装的包
  20. pip list
  21.  
  22. 显示包详细信息
  23. pip show django

三、变量

变量就是用来在程序运行期间存储各种需要临时保存可以不断改变数据的标识符,一个变量应该有一个名字,并且在内存中占据一定的存储单元,在该存储单元中存放变量的值。

变量可以存不同的数据,不仅可以是字符串,还可以是整数或浮点数,比如a=2.1

变量定义的规则:

  • 变量名只能是字母、数字或下划线的任意组合
  • 变量名的第一个字符不能是数字
  • python关键字不能声明为变量名

当我们写:name="python"时,Python解释器干了两件事情:

  • 1)在内存中创建了一个'python'的字符串;
  • 2)在内存中创建了一个名为name的变量,并把它指向'python'。

这时候把变量name赋值给另一个变量name1,这个操作实际上是把变量name1指向变量name所指向的数据,与变量name并无任何关系;若name值变化,name1的值依然无变化;name的值发生变化,相当于重新开辟了一块内存空间;而name1依然指向原有内存空间。

四、常量

常量就是不能变的变量,比如常用的数学常数π就是一个常量。

在Python中,通常用全部大写的变量名表示常量:如 TOTAL

五、输入、输出

可以用print()输出,输入的话,是用input(),他是python的一个内置方法

  1. >>> type(input)
  2. <class 'builtin_function_or_method'>

输入的字符串保存在变量name中,然后打印name

  1. >>> name = input('username:')
  2. username:jack
  3. >>> print(name)
  4. jack

六、字符串格式化及格式化输出

  1. 字符串 %s
  2. print("Hello,%s" % "world")
  3.  
  4. 整数 %d
  5. print("My age is %d" % 20)
  6.  
  7. 浮点数 %f
  8. print("My age is %f" % 20)

格式化输出

  1. name = input("what is your name:")
  2. age = int(input("tell me you age:"))
  3. job = input("job:")
  4. salary = input("salary:")
  5.  
  6. info = '''
  7. ---- info of %s ------
  8. name:%s
  9. age:%d
  10. job:%s
  11. salary:%s'''%(name,name,age,job,salary)
  12. print(info)
  13.  
  14. info2 = '''
  15. ---- info of {_name} ------
  16. name:{_name}
  17. age:{_age}
  18. job:{_job}
  19. salary:{_salary}
  20. '''.format(_name=name,_age=age,_job=job,_salary=salary)
  21. print(info2)
  22.  
  23. info3 = '''
  24. ---- info of {0} ------
  25. name:{0}
  26. age:{1}
  27. job:{2}
  28. salary:{3}
  29. '''.format(name,age,job,salary)
  30. print(info3)

七、流程控制(if、三目运算)

Python的语法比较简单,采用缩进方式,一般是一个tab

  1. # if
  2. '''
  3. a>0 则输出a,
  4. 否则输出-a
  5. '''
  6.  
  7. a = 1
  8. if a > 0:
  9. print(a)
  10. else:
  11. print(-a)
  12.  
  13. # 三目运算
    a = 1
    b = 2
    k = a if a<b else b

#开头的语句是注释,还可以使用'''xxx'''来进行多行注释,注释是给人看的,解释器会忽略掉注释。语句以冒号:结尾时,后面的语句要缩进。

八、while循环

1.基本格式:

  1. # while 条件:
  2.    # 循环体
  3. # 如果条件为真,那么循环体则执行;否则,循环体不执行
  4.   
  5. while True:
  6. print(1)

2.break退出整个循环

  1. while True:
  2. print1
  3. break
  4. print2

上面的代码会先输出1,然后遇到break,就退出当前循环,所以不再打印出2了

3.continue退出当前循环

  1. while True:
  2. print1
  3. continue
  4. print2

不停的输出1,永远不会输出2  

九、for循环

按照顺序循环可迭代对象中的内容

  1. name = ('jack','tom')
  2. for i in name:
  3. print(i)

jack
tom

  1. for i in range(5):
  2. print(i)

0
1
2
3
4

十、练习题(参考答案已放在Q群文件中)

0.代码实现1-100奇数求和,至少3种方式。

1.登录

# 如果登录成功,输出欢迎信息,退出程序
# 如果错误次数3次,退出程序


2..猜数游戏

# 猜对,打印猜对信息,退出程序
# 最多连续猜三次,连续错三次后询问是否继续玩游戏,是,继续猜,否,退出程序

3.冒泡排序

data = [10, 4, 33, 21, 54, 8, 11, 5]

Python【第一篇】python安装、pip基本用法、变量、输入输出、流程控制、循环的更多相关文章

  1. Python之路【第一篇】:介绍、基本语法、流程控制

    一.python 简介 python 特点 Python是一种计算机程序设计语言.你可能已经听说过很多种流行的编程语言,比如非常难学的C语言,非常流行的Java语言,适合初学者的Basic语言,适合网 ...

  2. python第一篇-------python介绍

    一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,Guido开始写Python语言的编译器.Python这个名字,来自Guido所 ...

  3. 第一篇:python基础

    python基础   python基础 本节内容 python起源 python的发展史 为什么选择python3 第一个python程序 变量定义 表达式和运算符 用户输入 流程控制 判断 流程控制 ...

  4. python第三方库的安装pip的使用与换源(解决pip下载速度慢)

    python和其他语言一样,也有大量的第三方库 在安装python时默认都会安装pip,安装了pip后 在cmd.exe下可以运行pip 安装库 pip install 库的名字 换源 因为PyPi地 ...

  5. 【OpenCV第一篇】安装OpenCV

    [OpenCV第一篇]安装OpenCV 本篇主要介绍如何下载OpenCV安装程序,如何在VS2008下安装配置OpenCV,文章最后还介绍了一个使用OpenCV的简单小例子. <OpenCV入门 ...

  6. SaltStack入门到精通第一篇:安装SaltStack

    SaltStack入门到精通第一篇:安装SaltStack 作者:纳米龙  发布日期:2014-06-09 17:50:36   实际环境的设定: 系统环境: centos6 或centos5 实验机 ...

  7. Jenkins拾遗--第一篇(安装Jenkins)

    起因 近期由于工作需要做起了起了jenkins的维护.不做不知道,一搞发现里边全是小坑.两个月弄了一身泥.曾经小瞧了它,但是发现其实要弄好它不是那么容易的.有句知名的话"没有总结就没有提高. ...

  8. Java 学习第一步-JDK安装和Java环境变量配置

    Java学习第一步——JDK安装及Java环境变量配置 [原文]  2014-05-30 9:09  Java SE  阿超  9046 views Java作为当下很主流的编程语言,学习Java的朋 ...

  9. python学习第七天流程控制循环while和循环for区别

    流程控制循环是任何编程语言都有一种循环结构,在python while 和break continue 搭配使用,还一种while ....else ......,for循环有序列表和字符串 whil ...

  10. 第一篇 Python安装与环境变量的配置

    开发语言有很多种,为什么选Python? 先对各种开发语言做个初识和分类如下:高级语言:Python Java.PHP C# Go ruby C++... ---> 字节码低级语言:C.汇编 - ...

随机推荐

  1. Android八门神器(一): OkHttp框架源码解析

    HTTP是我们交换数据和媒体流的现代应用网络,有效利用HTTP可以使我们节省带宽和更快地加载数据,Square公司开源的OkHttp网络请求是有效率的HTTP客户端.之前的知识面仅限于框架API的调用 ...

  2. C#:在匿名方法中捕获外部变量

    先来一段代码引入主题.如果你可以直接说出代码的输出结果,说明本文不适合你.(代码引自<深入理解C#>第三版) class Program { private delegate void T ...

  3. CentOS 7下使用Gitolite搭建Git私服

    1. 搭建环境 CentOS7, git version 1.8.3.1 2. 安装依赖包 yum install curl-devel expat-devel gettext-devel opens ...

  4. 07-Vue的基础使用

    vue的介绍 前端框架和库的区别 nodejs的简单使用 vue的起步 指令系统 组件的使用 过滤器的使用 watch和computed 钩子函数 渐进式的JavaScript框架 vue react ...

  5. Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助

    Python第二天  变量  运算符与表达式  input()与raw_input()区别  字符编码  python转义符  字符串格式化  format函数字符串格式化  帮助 目录 Pychar ...

  6. Python编写脚本(输出三星形状的‘*’符号)

    环境:python3.* 心得:个人认为脚本非我强项,以下效果可以有更简单解决方案,纯属练习逻辑. 方案一: s=1 while s<=10: #这是决定多少列,起始为1,大循环一圈即加一,就是 ...

  7. SQL Server -- 回忆笔记(五):T-SQL编程,系统变量,事务,游标,触发器

    SQL Server -- 回忆笔记(五):T-SQL编程,系统变量,事务,游标,触发器 1. T-SQL编程 (1)声明变量 declare @age int (2)为变量赋值 (3)while循环 ...

  8. Servlet是否单例?

    1,测试环境: Java SE版本:1.8.0_161(AMD64) Tomcat版本:9.0.7(AMD64) 2,试验 (1)编写HelloServlet. 由于测试代码很简单,此处只列出doGe ...

  9. MySql 学习之路-基础

    Mysql 自学之路 本文包含基础部分与高级部分 一.基础 数据库操作 Show databases:显示所有的数据库 Show tables: 显示所有的数据库表 Use databasename: ...

  10. 周末班:Python基础之网络编程

    一.楔子 你现在已经学会了写python代码,假如你写了两个python文件a.py和b.py,分别去运行,你就会发现,这两个python的文件分别运行的很好.但是如果这两个程序之间想要传递一个数据, ...