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

一、python安装

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

编写:hello world

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

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

二、pip基本用法

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

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

pip基本用法如下:

安装
pip install Django 指定版本安装(可以升级或者降低版本)
pip install Django==1.11.1 查看已安装的包
pip show --files Django 查看哪些需要更新
pip list --outdated 升级包
pip install --upgrade Django 卸载包
pip uninstall Django 列出已安装的包
pip list 显示包详细信息
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的一个内置方法

>>> type(input)
<class 'builtin_function_or_method'>

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

>>> name = input('username:')
username:jack
>>> print(name)
jack

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

字符串 %s
print("Hello,%s" % "world") 整数 %d
print("My age is %d" % 20) 浮点数 %f
print("My age is %f" % 20)

格式化输出

name = input("what is your name:")
age = int(input("tell me you age:"))
job = input("job:")
salary = input("salary:") info = '''
---- info of %s ------
name:%s
age:%d
job:%s
salary:%s'''%(name,name,age,job,salary)
print(info) info2 = '''
---- info of {_name} ------
name:{_name}
age:{_age}
job:{_job}
salary:{_salary}
'''.format(_name=name,_age=age,_job=job,_salary=salary)
print(info2) info3 = '''
---- info of {0} ------
name:{0}
age:{1}
job:{2}
salary:{3}
'''.format(name,age,job,salary)
print(info3)

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

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

# if
'''
a>0 则输出a,
否则输出-a
''' a = 1
if a > 0:
print(a)
else:
print(-a) # 三目运算
a = 1
b = 2
k = a if a<b else b

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

八、while循环

1.基本格式:

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

2.break退出整个循环

while True:
print(1)
break
print(2)

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

3.continue退出当前循环

while True:
print(1)
continue
print(2)

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

九、for循环

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

name = ('jack','tom')
for i in name:
print(i)

jack
tom

for i in range(5):
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. Python第六天 类型转换

    Python第六天   类型转换 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Python第二天  变量  运算符与表达式  input()与raw_inp ...

  2. 使用web3.js监听以太坊智能合约event

    传送门: 柏链项目学院 使用web3.js监听以太坊智能合约event   当我们在前端页面调用合约时发现有些数据不会立即返回,这时还需要再调用更新数据的函数.那么这样的方法使用起来非常不便,监听ev ...

  3. git执行cherry-pick时修改提交信息

    git执行cherry-pick时修改提交信息 在本地分支执行cherry-pick命令时有时需要修改commit message信息,可以加参数-e实现: git cherry-pick -e co ...

  4. python_库学习_01

    一.python的库学习之 财经数据接口包 1.安装ThShare 直接pip install tushare 可能会出现缺少依赖库的情况,依次安装,大概有lxml,pandas,bs4,reques ...

  5. Mac系统编译FFmpeg

    转载请标明来源:我不是掌柜的博客 前言 维基百科解释:FFmpeg是一个开源软件,可以运行音频和视频多种格式的录影.转换.流功能,包含了libavcodec – 这是一个用于多个项目中音频和视频的解码 ...

  6. 初学Django项目可能会遇到的问题

    1. 出现莫名其妙的 app01 我项目中的app名字并不是app01,可是运行python manage.py makemigrations的时候总是提示app01不是已安装的app Applyin ...

  7. 腾讯大数据平台Oceanus: A one-stop platform for real time stream processing powered by Apache Flink

    January 25, 2019Use Cases, Apache Flink The Big Data Team at Tencent     In recent years, the increa ...

  8. maven-assembly-plugin打包可执行的jar包

    pom.xml添加 <build> <plugins> <plugin> <artifactId>maven-assembly-plugin</a ...

  9. c# 日期函数DateTime.ToString()日期的各种格式

    //c# datetime 格式化 DateTime dt = DateTime.Now; //2017/11/14 10:46:56 label1.Text = dt.ToString();//20 ...

  10. C#深度学习のLINQ

    一.LINQ的由来 LINQ是Language Integrated Query的缩写,意思是语言扩展查询 查询是一种从数据源检索数据的表达式. 查询通常用专门的查询语言来表示. 随着时间的推移,人们 ...