第一章 关于python
Python简介
Python是什么?
python的创始人为吉多·范罗苏姆(Guido van Rossum)。
“Python is a great object-oriented, interpreted, and interactive programming language“。
Python官网(https://wiki.python.org/moin/FrontPage)对Python的解释为:“Python是一种面向对象的、解释型的、带有动态语义的高级程序语言“。
面向对象编程:Object Oriented Programming,简称OOP,是一种程序设计思想。OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数。
解释型语言:程序不需要编译,程序在运行时才翻译成机器语言,每执行一次都要翻译一次。
动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。
Python主要应用领域
(1)网络编程:包括 web 网站 、服务器后台服务等
(2)科学运算:随着 NumPy、SciPy、matplotlib、ETS 等众多程序库的开发,Python 越来越适合于做科学计算
(3)自动化运维与测试:可以使用Python开发自动化管理工具、监控程序等;也可以应用于selenium、appium中编写自动化脚本,提高测试效率
(4)爬虫:爬虫领域,Python几乎是霸主地位,Scrapy\Request\BeautifuSoap\urllib等,想爬啥就爬啥
(5)云计算:目前最火最知名的云计算框架就是OpenStack,Python现在的火,很大一部分就是因为云计算
(6)人工智能:谁会成为AI 和大数据时代的第一开发语言?这本已是一个不需要争论的问题
总之,Python 能做的事情还是非常多的,不然为什么有那么多大中型互联网企业(如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等)都在用python呢?
python2 or python3
"Python 2.x is legacy, Python 3.x is the present and future of the language"
所以当然是Python3咯!
python安装
Python目前已支持所有主流操作系统,在Linux,Unix,Mac系统上自带Python环境,在Windows系统上需要安装一下,Windows安装步骤如下
(1) 打开官网下载中心:https://www.python.org/downloads/windows/

(2)选择下载你要安装的版本,下载完成后根据提示完成安装即可
(3)在安装的过程中需要勾选“Add Python 3.x to PATH”,如果没有勾选,需要在安装完成之后,将Python的安装目录(如C:\Python34)添加到环境变量PATH下面

(4)测试安装是否成功:windows->运行->cmd(或者使用快捷键windows键+r打开运行),输入python,如果出现版本信息,则安装成功

第一个Python程序
接下来我们可以写第一个python程序了,接着刚才的cmd运行界面,输入print('hello world')

恭喜你,你已经迈出漫长python学习生涯的第一步了。
好马配好鞍,JAVA有Eclipse,C#,C++有VisualStudio,那对于Python有什么好的开发工具呢?当然首推Pycharm啦!所以赶紧去官网
https://www.jetbrains.com/pycharm/download 下载最好的Python开发IDEPycharm吧!
变量和基本数据类型
变量
name='luoli'
变量即变化的量,python中的变量很好理解,就是代表(或者引用)某值的名字
变量的定义规范:变量名只能是字母、数字和下划线;不能以数字开头;关键字不能声明为变量
变量的属性包括:id、type和value
id的作用为标识内存地址
>>> name='luoli'
>>> id(name)
92499072
type的作用为查看变量数据类型
>>> name='luoli'
>>> type(name)
<class 'str'>
value的作用为查看变量值
>>> name='luoli'
>>> name
'luoli'
基本数据类型
整型
>>> age=18
>>> type(age)
<class 'int'>
浮点型
>>> score=98.5
>>> type(score)
<class 'float'>
字符串
>>> name='luoli'
>>> type(name)
<class 'str'>
列表:在[ ]内用逗号分隔,可以存放多个任意类型的值
>>> list=['luoli','','98.5']
>>> print(list)
['luoli', '', '98.5']
字典:在{}内用逗号分隔,可以存放多个key:value的值,value可以是任意类型
>>> dic={'name':'luoli','age':'','score':'98.5'}
>>> dic['name']
'luoli'
布尔值:True 和False,用于逻辑判断
>>> a=3
>>> b=5
>>> a>b
False
>>> a<b
True
输入和输出
输入
当计算机与用户交互的时候,需要用户输入一些必要的信息怎么办呢?python提供了input()可以让用户输入字符串,并保存到变量里。
>>> username=input("Please enter your name:")
Please enter your name:luoli
格式化输出
如果要求用户输入用户名和年龄,然后打印成如下格式:
my name is xxx,my age is yyy
上述的'xxx'和'yyy'是根据用户的输入变化而变化的,那该怎么办呢?这时就需要用占位符进行格式化输出了
name=input('Please enter your name:')
age=input('Please enter your age:')
print('your name is %s,your age is %s'%(name,age))
运行结果:
Please enter your name:luoli
Please enter your age:18
your name is luoli,your age is 18
常见的占位符有
| %d | 整数 |
| %f | 浮点数 |
| %s | 字符串 |
| %x | 十六进制整数 |
如果你不太确定用什么,'%s'永远起作用,它会把任何数据类型转换为字符串
基本运算符
计算机可以进行算数运算、比较运算、逻辑运算、赋值运算等
算数运算
| 运算符 | 描述 |
| + | 相加 |
| - | 相减 |
| * | 相乘 |
| / | 相除 |
| % | 相除-取余数 |
| ** | 求幂 |
| // | 相除-取商 |
比较运算:返回值为True或False
| 运算符 | 描述 |
| == | 等于 |
| != | 不等于 |
| > | 大于 |
| < | 小于 |
| >= | 大于等于 |
| <+ | 小于等于 |
赋值运算
| 运算符 | 描述 |
| = | 赋值运算 |
| += | 加法赋值 |
| -= | 减法赋值 |
| *= | 乘法赋值 |
| /= | 除法赋值 |
| %= | 取模赋值 |
| **= | 幂赋值 |
| //= | 取整除赋值 |
逻辑运算:返回值为True或False
| 运算符 | 描述 |
| and | 布尔'与',全为True时返回True |
| or | 布尔'或',只要有一个为True则返回True |
| not | 布尔'非',如果x为True,则not x 返回False |
流程控制
if...else
a.用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败!
username=input('请输入用户名:')
password=input('请输入密码:')
if username=='seven' and password=='':
print('登录成功')
else:
print('登录失败')
b.根据用户输入内容输出其权限,当输入super时为超级管理员,输入为admin时为普通管理员,输入为governor时为业务主管,输入为general时为普通用户
user=input("请输入用户名:")
if user=='super':
print("超级管理员")
elif user=='admin':
print("普通管理员")
elif user=='governor':
print('业务主管')
elif user=='general':
print('普通用户')
else:
print('无权限')
c.如果:今天是Monday,那么:上班,
如果:今天是Tuesday,那么:上班,
如果:今天是Wednesday,那么:上班,
如果:今天是Thursday,那么:上班,
如果:今天是Friday,那么:上班,
如果:今天是Saturday,那么:出去浪,如果:今天是Sunday,那么:出去浪
today=input('today is :')
if today in ['Saturday','Sunday']:
print('go happy')
elif today in ['Monday','Tuesday','Wednesday','Thursday','Friday']:
print('go work')
else:
print('''必须输入其中一种:
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
''')
while循环
a.打印0-10
count=0
while count<=10:
print(count)
count+=1
b.打印0-10之间的偶数
count=0
while count<=10:
if count%2==0:
print(count)
count+=1
c.使用while循环输出1 2 3 4 5 6 8 9 10
count=1
while count<=10:
if count==7:
count += 1
continue
print(count)
count+=1
d.(1)循环验证用户输入的用户名与密码
(2)认证通过后,运行用户重复执行命令
(3)当用户输入命令为quit时,则退出整个程序
tag=True
while tag:
username=input('请输入用户名:')
password=input('请输入密码:')
if username=='luoli' and password=='':
while tag:
text=input("command:")
if not text:
continue
if text=='quit':
tag=False
continue
print('run %s'%text)
else:
print("登录失败")
练习
1.求1-2+3-4+5 ... 99的所有数的和
sum=0
count=0
while count<100:
if count%2==0:
sum=sum-count
if count%2==1:
sum=sum+count
count+=1
print(sum)
2.(1)让用户输入用户名密码
(2)认证成功后显示欢迎信息
(3)输错三次后退出程序
(4)可以支持多个用户登录 (提示,通过列表存多个账户信息)
(5)用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)
usr=['user_01','user_02','user_03']
usr_pwd={'user_01':'','user_02':'','user_03':''}
count=0
count_lock=0
while True:
#username错误输入三次退出
if count>2:
print('Login Failed')
break
username=input('Please enter your name:') #检查username是否锁定
with open ('C:\lock_user.txt', 'r')as f:
lock_user=f.read().split(',')
if username in lock_user:
print('Sorry! The user has been locked')
break #检查not exist username
if username not in usr:
print('username is not exist! Please try again!')
count+=1 #检查exist username并判定密码
if username in usr:
password=input('Please enter your password:')
if password==usr_pwd[username]:
print('Login success')
break
else:
print('Your password is wrong! ')
count_lock+=1 #输入错误密码三次被写入lock_file
if count_lock>2:
with open('C:\lock_user.txt', 'w')as f:
f.write('%s,'%username)
print('user has been locked')
break
第一章 关于python的更多相关文章
- 第一章:Python基础の快速认识基本语法
本課主題 第一个 Hello World 程序实战 用户输入实战 模块介紹 变量介绍 格式化介紹 条件判断介紹和操作实战 for 循环介紹和操作实战 作业需求 Python 第一个 Hello Wor ...
- 第一章 走进Python
目标 了解Python的历史 了解Python的特征 了解Python的应用 掌握Linux下Python开发环境的搭建 理解Windows下Python环境搭建 案例 安装Python,写出第一个P ...
- 《流畅的python》读书笔记,第一章:python数据模型
这本书上来就讲了魔法方法,也叫双下方法.特殊方法,通过两个例子对让读者了解了双下方法的用法,更重要的是,让我一窥Python的语言风格和给使用者的自由度. 第一个例子:一摞Python风格的纸牌: i ...
- 第一章:Python数据分析前的基础铺垫
本节概要 - 数据类型 - 数据结构 - 数据的常用操作方法 数据类型 基础铺垫 定义 我们搞数据时,首先要告诉Python我们的数据类型是什么 数值型:直接写一个数字即可 逻辑型:True,Fals ...
- 第一章:Python的数据结构、函数和文件
list list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >>> classmates = ['Michael', ...
- 第一章:python基础语法| 字符编码| 条件语句...
1.编程语言介绍 编程就是写代码,让计算机帮你做事情.计算机底层是电路,只认识二进制0和1.机器语言&汇编语言语言进化历史:机器.汇编.高级.机器语言只接受二进制代码:汇编语言是采用英文缩写的 ...
- 第一章:初识Python
一个Python列表 movies = ["The Holy Grail",1975,"Terry Jones&Terry Gilliam",91,[& ...
- 第一章、Python环境搭建
一.安装Python解释器 Windows下 Python开发环境搭建 1.官网下载: https://www.python.org/downloads/ 2.选择对应的版本 3.双击运行 4.选 ...
- 我的python中级班学习之路(全程笔记第一模块) (第一章)(第2部分:如何设置python中的字体颜色,猜年龄练习题解答,while else语句,pycharm的使用)
第一章: python 基础语法 第 2 部分: 一.猜年龄练习题解答 直接上代码 >>> age = 26 >>> count = 0 >>&g ...
随机推荐
- mysql 读写分离 ,mysql_proxy实现
下载安装mysql_proxy: 解压后, 该目录包含已经编译好的二进制文件 . 1: 利用mysql_proxy实现负载均衡 执行mysql_proxy ./mysql-proxy-path/bin ...
- vue 截取视频第一帧
最近自己写项目,在项目中涉及功能点又截取视频帧的点:需求澄清:移动端封面展示,平台上传图片(多张上传)取第一张上传图片为封面图:如上传视频则截取视频第一帧作为封面图: 实现思路:h5 video标签 ...
- Tab 切换效果
今天写的两个小效果都是为了测试我写的单参函数,结果还是有点成功的~~此处是不是想发表情包! Tab效果很简单,这里我就不赘述了,直接上代码: html代码: <div class="c ...
- String,StringBuffer,StringBuild的区别
1.三者在执行速度方面的比较:StringBuilder > StringBuffer > String 2.String <(StringBuffer,StringBuild ...
- select Option(增加,删除,清空)
jQuery获取Select选择的Text和Value: $("#select_id").change(function(){//code...}); //为Select添加事件, ...
- Python之Mail编程
# Mail编程- 管理程序 - Euroda使邮件普及 - Netscape,outlook,forxmail后来居上 - Hotmail使用浏览器发送邮件 ## 邮件工作流程- MUA邮件用户代理 ...
- php 返回某个月的 每周几有几天
不得不承认,这真是一个奇葩的需求,无奈写个类凑活用用. 输入日期格式或者 时间戳,返回当月有多少个周一.周二.周三.....周日; 思路就是 找到这个月有多少天,在便利判断. 稍微考虑下闰年的情况 前 ...
- hdu 4079简单贪心
#include<stdio.h> #include<string.h> #define ll __int64 #define N 11000 struct node { in ...
- oracle 有个xe版本
oracle 有个xe版本 学习了:http://blog.csdn.net/angiexia/article/details/8615771
- 【分享】GEARS of DRAGOON 1+2【日文硬盘版】[带全CG存档&攻略+SSG改动+打开存档补丁]
冒险者们哟.寻找龙秘玉吧--! ninetail的最新作,是使用丰富多彩的技能·道具探索迷宫的3D迷宫RPG! 存在着骑士和神官的架空世界常见的职业为首的13种职业.超过数百种的道具的登场! 和伙伴一 ...