说实话第一次接触Python还是在我刚上班的时候,听说很多人这个开发语言很吊,应用的领域很多。but这些东西还不能够吸引我,真正的原因是因为这个开发语言很是简单,比较适合我这种2B学的。但是越往后越觉得这个语言的牛逼之处(虽然我现在才学到CLASS,但是已经觉得IQ不够用了)。所以说我现在又得重新的复习下了,这个就很烦。顺便也可以给刚刚学习Python的人做一些笔记。相信以我这种小学毕业的人做的笔记肯定是浅显易懂了。

  很多人有可能是从Linux运维来学一点Python的,相信我现在光做运维是不行的了。摆在你面前的就两条路:一个是运维开发,一个是纯开发。好了咱们废话也不多说了,因为我觉得还有可能坚持不下来,所以就不在这个地方立flag了。让我们开始装X之路......

  对了下面咱们使用的Python版本都是Python3x,开发平台为window,使用的开发工具为pycharm,下面我们就要开始开发之路了,记住你只一个运维开发。

  首先国际惯例:在Linux系统上用vi编译器写出一个句话:

 print("Hello World")

是不是感觉自己特别的牛逼,没有错,你现在已经是一个牛逼的程序员了。在这里这个代码做了一个打印动作打印出“Hello World”这句话(这里我们这里补充一下如果你是在Linux平台下把这个程序当作一个脚本使用的话,也就是用vi编辑器写了一个Python脚本,记得需要在第一行加上#!/usr/bin/python3或者是#!/usr/bin/env python3记住这两个的区别,env是找系统的环境变量,也就是系统默认的Python3,相对于前面的好处就是,前者将Python所调用的解释器定义死了,后者更加灵活)。

  一、变量

  变量也有一些命名的规范:

    1.变量开端不能是数字

    2.一个变量之间不能有空格

    3.变量不能是一个特殊字符,或者是Python自己占用的关键字

 #可变的量
name = "yanweijian" #将yanweijian这个字符串赋值给了name这个变量
#存储数据,方便以后的调用
x = 5
y = 6
print (y + x) #这里的x,y可以是任意你输入的一个值,然后相加
#减少重复代码
name = "yanweijian"
name2 = "abc"
msg = "Hello"
print (msg name)
print (msg name2) #这里我们就省去了输入名字的这个步骤,直接调用变量

  二、数据类型

  在Python的学习中我们会遇到很多的数据类型,下面我给大家介绍以后会经常用到的几种。

  在这里我们必须几种整型、str(后面的字符串类型)、布尔值。

 int(整型):任意的一个数字(Python2x中取值范围是-2**31~2**31-1,这个是32位系统中,64位就是63次方,但是在Python3x中没有限制)
long(长整型):这个在Python3x中已经没有了,所以你就把它当成皮放了吧
float(浮点数):http://www.cnblogs.com/alex3714/articles/5895848.html
complex(复数):这个小弟是真不知道所以就不解释了,其实也用不到 布尔:真或者是假 True or False 1(True) 或 0(False)
True就是条件成立,False就是条件不成立
5 + 10 > 12 (True)
5 + 10 > 18 (False) 字符串:"你好123" 被""包含起来的就是字符创

  三、字符串的常用功能

  对字符串的操作有很多,在这里我们会介绍几个这一节会用到的几个;比如说计算一个字符串的长度,给字符串进行切片,提取自己需要的内容,格式化输出和字符串的组合。

 hobbies = girl #变量
msg = "yanweijian is good man" #变量
# 0123456789.....(下标也叫索引)以此类推
msg.strip() #移除空白
msg[0:10] #比如我们只需要"yanweijian"这一段字符,这里为什么会写到下标10呢,n对应的下标不是9吗?大爷们切片需要记住顾头不顾尾。
len(msg) #长度
msg1 = msg + "and he's hobbies " +hobbies
print(msg1) #组合
#上面的方法实际上调用了好几次的内存,这样会占用资源,所以一般不用这种方发
msg1 = "%s and he's hobbies %s" %(msg,hobbies) #格式化输出,这样也同样实现了上面的功能

  四、数据类型——列表

  我现在有一个需求,让大家打印一组人的名字。没错你首先会想到直接print("you name"),但是如果让你打印一堆花里胡哨并跟上人名,你一个一个打印可能就让你有点难受了,这时我们就引进了一个新的字符类型列表(list)。这个时候你就可以将需要打印的人名放进一个列表中。在需要的时候直接取索引就能把想要的人名取出来了,废话不多说,下面我们直接和大家说说list的基本操作。

 msg = ["yanweijian","wuzhihu","liyaseng","yuechengjun","caoyun"] #定义一个列表,名字为msg

 #list的基本操作:
print(msg[0]) #查看msg的第一个下标,也就是"yanweijian"这个字符串
msg.index("wuzhihu") #查找出"wuzhihu"这个字符串的下标
msg[msg.index["wuzhihu"] = "liuyao" #找到"wuzhihu"并改成"liuyao"
msg.count("yanweijian") #查找出列表中有几个"yanweijian"
msg.sort() #首字母按照ASCII码排序
msg.reverse() #和sort相反
msg.append("alex") #将"alex"插入到最后面
msg.insert(2,"liuyao") #2指的是list中的下标,也就是"liyaseng"的后面
del msg[1] #删除"wuzhihu",这里的1指的是下标也就是"wuzhihu"
msg.remove("liyaseng") #删除"liyaseng"
msg[0:1] #取出"yanweijian"和"wuzhihu"
msg[0:5:2] #0:5是范围,2是步长,去出的是"yanweijian","liyaseng","caoyun"

  五、运算

  运算就是将运算符左右两边的值进行对比,从而判断是True还是FALSE或者是通过运算所得出来的值(这个会将下面说的if判断引出来所以在此不多说,请各位大爷们继续往下看)

 5%2 #取余数
5 // 2 #去整除,这里为2
"yanweijian" != "wuzhihu" #"!="为不等于 返回的是bool(布尔值)
==, >= , <= , > , < #此处就不多说了,聪明的人都会
+= #自加,后面的作业会说到

  六、成员运算和身份验证

 and #逻辑与
name = "yanweijian"
msg = "shuai"
name == "yanweijian" and msg == "shuai" #返回真和假True or False,此处为True or #逻辑或
name = "yanweijian"
msg = "shuai"
name == "yanweijian" and msg == "chou" #返回真和假True or False,此处为True not #逻辑非,这个在下面会介绍

  七、流程控制if...else...流程控制

  说到if语句,很多会运维的人肯定是想到了bash shell中的if;没有错,这里的if语句很shell中的很是相似,下面我们通过图片和代码来了解下,Python语句的魅力;从此刻开始大家也就正是开始了Python代码之旅了。

if语句流程图(画的不好,大爷们将就看看吧):

场景一、用户登陆验证

 # 提示输入用户名和密码

 # 验证用户名和密码
# 如果错误,则输出用户名或密码错误
# 如果成功,则输出 欢迎,XXX! #!/usr/bin/env python
# -*- coding: encoding -*- import getpass name = raw_input('请输入用户名:')
pwd = getpass.getpass('请输入密码:') if name == "yanweijian" and pwd == "cmd":
print("欢迎,yanweijian!")
else:
print("用户名和密码错误")

场景二、猜年龄游戏

在程序里设定好你的年龄,然后启动程序让用户猜测,用户输入后,根据他的输入提示用户输入的是否正确,如果错误,提示是猜大了还是小了

 #!/usr/bin/env python
# -*- coding: utf-8 -*- my_age = 28 user_input = int(input("input your guess num:")) if user_input == my_age:
print("Congratulations, you got it !")
elif user_input < my_age:
print("Oops,think bigger!")
else:
print("think smaller!")

  八:for循环

  最简单的循环10次

 #_*_coding:utf-8_*_

 for i in range(10):
print("loop:", i )

  输入:

 loop: 0
loop: 1
loop: 2
loop: 3
loop: 4
loop: 5
loop: 6
loop: 7
loop: 8
loop: 9

需求一:还是上面的程序,但是遇到小于5的循环次数就不走了,直接跳入下一次循环

 for i in range(10):
if i<5:
continue #不往下走了,直接进入下一次loop
print("loop:", i )

需求二:还是上面的程序,但是遇到大于5的循环次数就不走了,直接退出

 for i in range(10):
if i>5:
break #不往下走了,直接跳出整个loop
print("loop:", i )

  九、while死循环

  while循环不同上面的for循环,只要触发就不会“停止”

 count = 0
while True:
print("你是sb,你是sb",count)
count +=1

其实除了时间,没有什么是永恒的,死循环还是少写为好 

上面的代码循环100次就退出吧

 count = 0
while True:
print("我要大保健,我要大保健",count)
count +=1
if count == 100:
print("大兄弟们北京大保健多少钱呀")
break

  十、补充

  在Python中的的注释是“#”开头的一行话,但是有时候我们需要多行注释,这个是时候somebody(简称sb)出来说了,我们可以在每一行的开头加上#。如果你真是这样干了的话,你就是“真皮沙发了”。对于多行注释Python中有专门的方法:

 '''妹子加微信:Myyanweijianstar
男的不要加,因为我喜欢女的
0.0
'''
#同时上面的方法还可以打印多行比如
info = '''
NAME
AGE
JOB
'''
print(info)

  输出结果:

NAME

AGE

JOB

小练习:

  编写登陆接口:

  • 输入用户名密码
  • 认证成功后显示欢迎信息
 count = 0
while count <3:
name = input("you're name:")
password = input("you're password:")
if name == "yanweijian" and password == "shuaige":
print("welcome login...")
else:
print("you're password is error please again...")
count += 1

答案

Email:yanweijian_tt@icloud.com or yanweijian_tt@163.com

Python—课时ONE的更多相关文章

  1. python课时二

    通过上个博客的学习,相信大家已经对Python是什么东西应该有了相对应的了解,这里也包括Python的一些语法(比如Python在写for循环和if判断的时候都是会有缩进的).这张博客大概会对Pyth ...

  2. day 07 元组,字典和集合等数据类型介绍

    元组:就是一个不可变的列表 1.用途,当我们需要记录多个值,并且没有更改的需求的时候,应该使用元组 2定义方式:使用,在 ( ) 中分隔开多个任意类型的值 注:t=("egg",) ...

  3. 课时1:我和python的第一次亲密接触

    目录: 一.Python3的下载与安装 二.从IDIE启动Python 三.尝试点新的东西 四.为什么会这样? 五.课时01课后习题及答案 ============================== ...

  4. 课时2:用python设计第一个游戏

    目录: 一.第一个小游戏 二.缩进 三.BIF 四.课时02课后习题及答案 ********************* 一.第一个小游戏 ********************* # p2_1.py ...

  5. 课时5:闲聊之Python的数据类型

    目录: 一.引言 二.数据类型 >整型 >浮点型 >布尔类型 三.类型转换 四.获得关于类型的信息 五.课时05课后习题及答案 *********** 一.引言 ********** ...

  6. 课时6:Python之常用操作符

    目录: 一.算术操作符 二.优先级问题 三.比较操作符 四.逻辑操作符 五.课时06课后习题及答案 ****************** 一.算术操作符 ****************** > ...

  7. 课时17:函数:Python的乐高积木

    目录: 一.创建和调用函数 二.函数的参数 三.函数的返回值 四.课时17课后习题及答案 为了使得程序得代码变得简单,就需要把程序分解成较小得组成部分.有三种方法可以实现:函数.对象.模块. **** ...

  8. python学习之第一课时--初始python

    Python前世今世 python是什么 python是一门多种用途的编程语言,时常在扮演脚本语言的角色 python流行原因 软件质量 提高开发者效率(python代码大小为C/java的1/3-1 ...

  9. 程序媛计划——python中级课时1

    class1 异常处理 #python会把标准输入的内容当作字符串处理,即使输入的是数字3也会转化为字符串’3’. n1 = raw_input() n2 = raw_input() print n1 ...

随机推荐

  1. Lvs工作原理

    DR模式的工作过程: 当一个client发送一个WEB请求到VIP,LVS服务器根据VIP选择对应的real-server的Pool,根据算法,在Pool中选择一台Real-server,LVS在ha ...

  2. Fiddler抓取https原理?

    参考:http://blog.csdn.net/xoopx/article/details/51577039 首先fiddler截获客户端浏览器发送给服务器的https请求, 此时还未建立握手.第一步 ...

  3. smokeping安装部署最佳实践

    1.1安装smokeping [root@linux-node2 ~]# cat /etc/redhat-release              #查看服务器信息 CentOS release 6. ...

  4. flume日志采集框架使用

    flume日志采集框架使用 本次学习使用的全部过程均不在集群上,均在本机环境,供学习参考 先决条件: flume-ng-1.6.0-cdh5.8.3.tar  去cloudrea下载flume框架,笔 ...

  5. 性能调优:mysql之left join

    poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821478,咨询电话010-845052 ...

  6. Spring Hiernate整合

    Spring整合Hibernate 一.整合目标 1.由IoC容器管理Hibernate的SessionFactory2.让Hibernate使用Spring的声明式事务 二.整合步骤 先加入Hibe ...

  7. 1 IDEA 安装 及 IDEA开发 spring的环境搭建

    摘要: 主要讲解使用 IDEA 开发 Spring MVC 的环境搭建,Maven的简单教学. 参考1:https://my.oschina.net/gaussik/blog/385697 参考2:h ...

  8. 使用FSharp 探索Dotnet图像处理功能1--反色变化

    坚持写博客是最近的目标.加油. 业余学习fsharp以来一直觉得这才是Dotnet开发,或者说所有开发者应该拥有的语言.配合Visual Studio的代码提示,即时执行窗口.开发程序有着极大的乐趣. ...

  9. Ecplise 中 加载JDBC 连接 Mysql 数据库读取数据

    准备工作 首先下载 JDBC 驱动,下载地址https://www.mysql.com/products/connector/ 将压缩包解压得到文件 mysql-connector-java-5.1. ...

  10. 开源的C#实现WebSocket协议客户端和服务器websocket-sharp组件解析

    很久没有写博客了(至少自己感觉很长时间没有写了),没办法啊,楼主也是需要生活的人啊,这段一直都在找工作什么的.(整天催我代码的人,还望多多谅解啊,我会坚持写我们的项目的,还是需要相信我的,毕竟这是一个 ...