python开发之路-day01
1.Python前世今生
python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。
最新的TIOBE排行榜,Python赶超PHP占据第五!
Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。互联网公司广泛使用Python来做的事一般有:自动化运维、自动化测试、大数据分析、爬虫、Web 等。
注视:上述重点字体表示该公司主要使用Python语言开发
2.为什么是Python而不是其他语言?
C 和 Python、Java、C#等
C语言: 代码编译得到机器码 ,机器码在处理器上直接执行,每一条指令控制CPU工作
其他高级语言: 代码编译得到字节码 ,虚拟机执行字节码并转换成机器码再后在处理器上执行
Python 和 C Python这门语言是由C开发而来
   对于使用:Python的类库齐全并且使用简洁,如果要实现同样的功能,Python 10行代码可以解决,C可能就需要100行甚至更多.
   对于速度:Python的运行速度相较与C,绝逼是慢了
Python 和 Java、C#等
   对于使用:Linux原装Python,其他语言没有;以上几门语言都有非常丰富的类库支持
   对于速度:Python在速度上可能稍显逊色
所以,Python和其他语言没有什么本质区别,其他区别在于:擅长某领域、人才丰富、先入为主。
3.Python的种类
- Cpython(解释)代码----字节码-----机器码(解释一行,执行一行)
Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上。 - Jyhton
Python的Java实现,Jython会将Python代码动态编译成Java字节码,然后在JVM上运行。 - IronPython
Python的C#实现,IronPython将Python代码编译成C#字节码,然后在CLR上运行。(与Jython类似) - PyPy(特殊)(编译)代码---字节码-----机器码(全部转换完之后在执行)
Python实现的Python,将Python的字节码字节码再编译成机器码。 - RubyPython、Brython ...
 
4、输入 输出
输入:
input:v = input ('请输入用户名:') v = 表示接收用户输入的值(等同于变量)
import:示例: import getpass v = getpass.getpass('请输入密码:')
输出:
print('内容'):打印括号里面的内容 print(变量):打印变量的内容
示例:
name = input('请输入姓名:')
print(name)
import getpass
pwd = getpass.getpass ('>>>')
print(pwd)
import getpass
name = input('请输入姓名:')
pwd = getpass.getpass ('请输入密码:')
age = input('请输入您的年龄:')
print(name)
print(pwd)
print(age)
复制代码
5、条件语句
if 条件: if 条件: if 条件:
成功走这儿 ... if 条件:
else: elif 条件: ...
失败走这儿 ... elif 条件:
elif 条件: ...
... else:
else: ...
...
示例:
username = input('请输入用户名:')
if username == 'sunkedong':
    print('超级管理员')
elif username == 'wuyanmin':
    print('超级管理员的老婆大人')
elif username == '乖乖':
    print('吾皇')
else:
    print('拜拜。。。')
print('end')
6、.循环语句
while 条件:
continue (跳出本次循环,执行下次循环)
break (跳出所有循环)
示例:
i = 1
while i < 11 :
print(i)
i += 1
=========================>
while True:
username = input('请输入用户名:')
pwd = input('请输入密码:')
if username == 'chengfei' and pwd == '':
print('登录成功')
break
else:
print('登录失败,请重新登录')
示例:
i = 1
while True:
if i == 7 :
i += 1
continue
print(i)
i += 1
if i == 11 :
break
示例:
i = 1
while i < 11 :
if i == 7:
i += 1
continue
print(i)
i += 1
if i == 11:
break
7、运算符
a.算术运算符

b.比较运算符

c.赋值运算符

d.逻辑运算符


8、.python类型
    —整数:创建:a = 123 或 a = int(123)  转换:age = ‘18’ ---- new_age = int(age)   print (type(变量)) 查看这个变量是什么类型
—布尔值 :创建:a = True b = False 转换:数字转换时,只有0是False,其他都是True,字符串转换时,只有为空时是False,其他True(a = 1 -- b = bool(a) print (b))
—字符串:-创建:a = 'tom' 或 a = str('tom') -转换:age = 18 new_age = str(age)
-字符串的拼接:如下
str = '我叫孙克东,今年18岁,性别:男。'
val = '扯淡'
new_str = str + val
print(new_str)
9.列表
-创建列表:a = ['tom','jim',123,'alxe'] 或 a = list(['tom','jim',123,'alxe'])
-in判断:
-索引 val = a [0] print (val)
-长度 val = len(a) print (val)
-切片 val = a [0::2] print (val)
-追加 a.append ('chengfei') 追加只能从最后追加
-插入 a.insert (1,'xo') 在第二个字符串前面插入,这里的0指的是索引
-删除 a.remove ('tom') 只删除列表中的第一个该字符串 del a [0] 删除列表下的第几个字符串 (可以索引删除,也可以切片删除)
-修改 a[0] = 'chengfei' 重新给该字符赋值
10.字典
-创建 v = {'name':'tom','pwd':'123'} 或 v = dic ({'name':'tom','pwd':'123'})
-索引 val = v['name'] print(val)
-增加 (有该值时,修改,没有该值,增加)v['age'] = 18 print (v)
-删除 del v['name']
-for循环
-长度 print (len(v))
-示例
字典的嵌套
user_list = {
    'k1': 'v1',
    'k2': {'kk1': 'vv1','kk2': 'vv2'},
    'k3': 456,
    'k4': ['tom','jim',123,{'k11':'v11'},['a','b','c']]
}
user_list['k4'][4].append('')
user_list['k4'][3]['name'] = 'sunkedong'
print(user_list)
应用
user_list = [
{'name':'jim','pwd':'','time':1},
{'name':'tom','pwd':'','time':1},
{'name':'alxe','pwd':'','time':1}
]
user = input('用户名:')
pwd = input('密码:')
for item in user_list:
if user == item['name'] and pwd == item['pwd']:
print('登陆成功')
break
练习:
打印-10的偶数
count = 0
while count <= 10:
if count%2 == 0:
print(count)
count +=1
猜大小游戏
count = 0
while count < 3:
sun_age = 24
input_age = int(input('>>'))
if input_age > sun_age :
print("猜大了,继续猜")
elif input_age < sun_age :
print("猜小了。继续猜")
else:
print("恭喜,猜对了")
count +=1
11、作业:
最终的用户登录接口
#coding:utf-8
import os
#定义一个用户列表
info=[['admin','adminpass'],['sunkd','sunkdpass'],['root','rootpass']]
#模拟用户登录的主机名
hostname = 'localhost'
count=0
tag=True
while tag:
if count >=3:
break
username = input("user:")
password = input("pass:") if username == info[0][0] and password == info[0][1] or username == info[1][0] and password ==info[1][1] or username == info[2][0] and password == info[2][1]:
print('welcome to %s user'%(username))
while tag:
msg=input('[%s@%s ~]'%(username,hostname))
if msg == "quit":
tag=False
else:
print(msg)
else:
print("login failed")
count+=1
surplus=3 - count
print(surplus)
print('你已经输错%s次,还有%s次机会'%(count,surplus))
if count >= 3:
#如果用户输入三次,锁定结果到文件,下次进行判断
os.system('echo lock > lock.log')
python开发之路-day01的更多相关文章
- Python自学之路---Day01
		
目录 Python自学之路---Day01 注释 单行注释 多行注释 print()函数 语法 参数 实例 input()函数 语法 参数 实例 查看Python的关键字 代码 变量与常量 变量 如何 ...
 - python 开发之路 - 入门
		
一. python 介绍 Python是著名的"龟叔"Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言.1991年 发布Python ...
 - python开发之路目录
		
Python 目录 基础 python入门 python数据类型.字符编码.文件处理 python函数基础 python函数进阶 python装饰器函数 python装饰器函数 python递归函数 ...
 - Python学习之路——Day01
		
Day01 一.编程和编程语言 编程语言是人与计算机之间交流沟通的介质 编程就是人实现通过让计算机实现动作的文件 二.计算机的组成 1.控制器:负责控制指挥计算机硬件运行 2.运算器:负责数学与逻辑运 ...
 - python开发之路-LuffyCity
		
阅读目录 一.python基础语法 二.python基础之字符编码 三.python基础之文件操作 四.python基础小练习 五.python之函数基础 六.python之函数对象.函数嵌套.名称空 ...
 - python复习之路-Day01
		
数据类型初识 1.数字 2 是一个整数的例子.长整数 不过是大一些的整数.3.23和52.3E-4是浮点数的例子.E标记表示10的幂.在这里,52.3E-4表示52.3 * 10-4.(-5+4j)和 ...
 - python开发之路-day03
		
一 文件操作一 介绍 计算机系统分为:计算机硬件,操作系统,应用程序三部分. 我们用python或其他语言编写的应用程序若想要把数据永久保存下来,必须要保存于硬盘中,这就涉及到应用程序要操作硬件,众所 ...
 - python开发之路-day02
		
一.数据类型 1 什么是数据? name='sunkedong'#字符串类型 age=24 #整型 date=2017.9#浮点型 dic={'name':'sunkedong','age':16}# ...
 - python 开发之路 -MySQL
		
阅读目录 第一篇 : 数据库 之 基本概念 第二篇 : MySQL 之 库操作 第三篇 : MySQL 之 表操作 第四篇 : MySQL 之 数据操作 第五篇 : MySQL 之 视图.触发器.存储 ...
 
随机推荐
- [BJWC2010]严格次小生成树(LCA,最小生成树)
			
[BJWC2010]严格次小生成树 题目描述 小C最近学了很多最小生成树的算法,Prim算法.Kurskal算法.消圈算法等等.正当小C洋洋得意之时,小P又来泼小C冷水了.小P说,让小C求出一个无向图 ...
 - nodepad++如何多行同时编辑
			
notepad++ 可以选中alt按键进行选择 支持同时编辑多行
 - flask之路径与函数的映射
			
一:运行报错 OSError: [Errno 98] Address already in use:5000端口可能被占 lsof -i:端口号 查看端口被那个进程使用,结果是python3.5 k ...
 - mybatis返回新增对象的主键
			
加这两行就可以返回这个插入对象的自增的主键<insert id="insertSeatPortraitData" parameterType="seatPortra ...
 - Pyhton爬虫实战
			
Pyhton爬虫实战 零.致谢 感谢BOSS直聘相对权威的招聘信息,使本人有了这次比较有意思的研究之旅. 由于爬虫持续爬取 www.zhipin.com 网站,以致产生的服务器压力,本人深感歉意,并没 ...
 - 026:if标签使用详解
			
if标签使用详解: if 标签: if 标签相当于 Python 中的 if 语句,有 elif 和 else 相对应,但是所有的标签都需要用标签符号 {% %} 进行包裹. if 标签中可以使 ...
 - 父工程 pom版本
			
<!-- 集中定义依赖版本号 --> <properties> <junit.version>4.12</junit.version> <spri ...
 - linux运维、架构之路-Nginx服务
			
一.Nginx服务 1.介绍 Nginx软件常见的使用方式或架构为:LNMP(linux nginx mysql php),Nginx三大主要功能,web网站服务,反向代理负载均衡(n ...
 - redis学习一  String数据类型
			
一:概述 字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中字符串类型的 ...
 - luogu P4103 [HEOI2014]大工程 虚树 + 树形 DP
			
Description 国家有一个大工程,要给一个非常大的交通网络里建一些新的通道. 我们这个国家位置非常特殊,可以看成是一个单位边权的树,城市位于顶点上. 在 2 个国家 a,b 之间建一条新通 ...