Python简介

  python是吉多·范罗苏姆发明的一种面向对象的脚本语言,可能有些人不知道面向对象和脚本具体是什么意思,但是对于一个初学者来说,现在并不需要明白。大家都知道,当下全栈工程师的概念很火,而Python是一种全栈的开发语言,所以你如果能学好Python,那么前端,后端,测试,大数据分析,爬虫等这些工作你都能胜任。

为什么选择Python

  关于语言的选择,有各种各样的讨论,在这里我不多说,就引用Python里面的一个彩蛋来说明为什么要选择Python,在Python解释器里输入import this 就可以看到。

>>> import this

The Zen of Python by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!

上面的话简单的总结来说就是“优雅”、“明确”、“简单”,或许你还是有些不明白,举个简单的例子,若果同样的功能你用C/C++写可能要写100行代码,而如果用Python写你可能只要20行代码就搞定,同样的如果一个问题有好几种解决方案,但是Python会用一种最简单的方法来实现。所以Python是用最简单最优雅最明确的方法来解决问题。

Python入门 

一、安装Python

  在这里我我推荐安装Python3,因为随着时间的推移Python3,必定是未来的趋势,我们要顺应潮流。在Python的官网可以下载相应的版本,网址是https://www.python.org/downloads/,安装上面的提示安装好即可,就不在多说了,此外后面的操作都是基于windows下的操作。

二、编写Hello,World

  安装好了环境之后,我们就可以编写代码了,这里我们以两种方式输出Hello,World,第一种我们用解释器来实现,打开cmd

输入Python,如果没有出现下面的实例,检查下python环境变量是否配置好。

C:\Users\Tab>python
Python 3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:38:48) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print('Hello,World')
Hello,World

  可以看出输出一句 hello,world 只需要一行代码即可,但是有一个缺点,那就是如果不小心把窗口关闭了,代码就没有了,所以在实际工作中这种方式并不常用。实际工作中,我们将代码保存在 .py文件中,保存为txt文件也行,但是就看不出来这是一个Python文件,所以不推荐这么做,然后在命令行下执行 python 1.py 就可以打印出来Hello,World。这里我使用的文本编辑器是Sublime Text。

#!/usr/bin/env python
# coding=utf-8
print("Hello,World")

第一行代码是在Linux下执行的时候,指出文件由python解释器来执行,第二行是告诉解释器在加载文件时,采用何种编码,不加上这句的话,在python2中显示中文会出现乱码,在python3中则不会,所以你如果用的是windows而且用的是python3,其实可以不用加这两句,不过实际中还是建议加上这两句。到这里我们就用了两种方式输Hello,World。

三、变量、输入、输出

  现在,你已经可以用print()输出你想要的结果了,但是,如果要让用户从电脑输入一些字符怎么办?Python提供了一个input(),可以让用户输入字符串,并存放到一个变量里。比如输入用户的名字:

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

假设将上面代码保存在文件1.py中,在命令行中执行python 1.py后,提示你输入一个用户名,输入完成后,打印出刚才输入的字符,上面声明了一个name变量,然后将输入的字符保存在name变量中,变量不仅可以是字符串,还可以是整数或浮点数,比如a=2

将定义了一个整形变量a,值为2。此外变量定义的规则有以下几点:

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

四、流程控制和缩进

  Python的语法比较简单,采用缩进方式

# xxxxx:
'''
a>0 则输出a 如果a<0,则输出-a
下面先定义了变量a=1
'''
a = 1
if a >= 0:
print(a)
else:
print(-a)

#开头的语句是注释,还可以使用'''xxx'''来进行多行注释,注释是给人看的,解释器会忽略掉注释。注释是用来解释程序的作用和功能,以后再实际的工作中要养成写注释的良好习惯。当语句以冒号:结尾时,后面的语句要缩进。

五、while循环

1.基本格式

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

上面的测试测序是一个死循环,条件一直为真,不停输出1。

2、break 退出整个循环

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

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

3、continue退出当前循环

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

大家可以思考下上面的程序输出什么,答案是会不停的输出1 1 1 1... ,为什么?因为循环条件一直为真,遇到continue语句的时候,程序跳出当前循环,并不执行 print(2)语句。

六、作业 

  1、使用while循环输入 1 2 3 4 5 6     8 9 10

  2、求1-100的所有数的和

  3、输出 1-100 内的所有奇数

  4、输出 1-100 内的所有偶数

  5、求1-2+3-4+5 ... 99的所有数的和

  6、用户登陆(三次机会重试)

# 题目1
t=0
while t<10:
t+=1
if t==7:
continue
print(t) # 题目2
sum=0
for i in range(101):
sum+=i
print(sum) # 题目3
for i in range(1,100,2):
print(i) # 题目4
for i in range(2,101,2):
print(i) # 题目5
sum=0
for i in range(0,100):
if i%2==0:
sum-=i
else:
sum+=i
print(sum) # 题目6
import getpass
username='jason'
password='1233456'
flag=0
def login():
user=input('username:')
passwd=getpass.getpass('password:')
return user,password
while flag<3:
user,passwd=login()
if username==user and password==passwd:
print('hello,jason')
break
else:
flag+=1
print ('error,input again')

  

Python全栈开发之1、输入输出与流程控制的更多相关文章

  1. 战争热诚的python全栈开发之路

    从学习python开始,一直是自己摸索,但是时间不等人啊,所以自己为了节省时间,决定报个班系统学习,下面整理的文章都是自己学习后,认为重要的需要弄懂的知识点,做出链接,一方面是为了自己找的话方便,一方 ...

  2. python全栈开发之OS模块的总结

    OS模块 1. os.name()      获取当前的系统 2.os.getcwd      #获取当前的工作目录 import os cwd=os.getcwd() # dir=os.listdi ...

  3. Python全栈开发之MySQL(二)------navicate和python操作MySQL

    一:Navicate的安装 1.什么是navicate? Navicat是一套快速.可靠并价格相宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设.它的设计符合数据库管理员.开发人员及中小 ...

  4. Python全栈开发之14、Javascript

    一.简介 前面我们学习了html和css,但是我们写的网页不能动起来,如果我们需要网页出现各种效果,那么我们就要学习一门新的语言了,那就是JavaScript,JavaScript是世界上最流行的脚本 ...

  5. Python全栈开发之MySQL(三)视图,存储过程触发器,函数,事务,索引

    一:视图 1:什么是视图? 视图是指存储在数据库中的查询的SQL语句,具有简单.安全.逻辑数据独立性的作用及视点集中简化操作定制数据安全性的优点.视图包含一系列带有名称的列和行数据.但是,视图并不在数 ...

  6. Python全栈开发之21、django

    http://www.cnblogs.com/wupeiqi/articles/5237704.html http://www.cnblogs.com/wupeiqi/articles/5246483 ...

  7. Python全栈开发之17、tornado和web基础知识

    一.web基础知识 学习web框架之前,先来看一下web基础知识,首先要明白其本质就是socket,用户对应一个socket客户端,但是如果从socket开始开发web应用程序那么效率太了,正确的做法 ...

  8. python全栈开发之路

    一.Python基础 python简介 python数据类型(数字\字符串\列表) python数据类型(元组\字典) python数据类型(集合) python占位符%s,%d,%r,%f prin ...

  9. Python全栈开发之5、模块

    一.模块 1.import导入模块 #1.定义 模块:用来从逻辑上组织python代码(变量,函数,类,逻辑),本质就是.py结尾的python文件,实现一个功能 包:python package 用 ...

随机推荐

  1. 分布式监控系统开发【day37】:监控数据如何存储(七)

    一.如何存储 二.目录结构 三.代码调用逻辑关系 四.实现代码 1.data_optimization 1.存筛选出来符合条件的数据 def get_data_slice(self,lastest_d ...

  2. powerdesigner中把表的描述复制到Name

    '****************************************************************************** '* File: comment2nam ...

  3. C++对象与其第一个非静态成员地址相同

    由于对象的内存空间里是按顺序依次存储了它的非静态成员变量,因此对象和它的第一个非静态成员变量的地址是相同的: class A { private: int i; } int main() { A a; ...

  4. HTML5笔记-加强版

    新增的语法结构表单验证   1.新的页面结构以及宽松的语法规范:<!doctype html> <meta charset=“utf-8”/> 2.新的结构化元素:语义化标签: ...

  5. 4.redis设计与实现--跳跃表

    1.跳跃表由两个结构体构成: 2.总结:

  6. Redhat安装配置VNC服务器

    1. 检查安装VNC服务器 # rpm -qa|grep vnc 如果返回信息中有tigervnc-server,说明已安装了VNC:如果没有: # yum install tigervnc # yu ...

  7. logstash 收集 IIS 日志实践

    IIS日志示例: 2017-02-20 00:55:40 127.0.0.1 GET /MkWebAPI/swagger/ui/index - 80 - 127.0.0.1 Mozilla/5.0+( ...

  8. 在asp.net 中生成PDF的方法

    近期要用asp.net 2.0生成PDF,看了下书,查了下资料,发现可以有组件帮得上忙,可以下载itextsharp(https://sourceforge.net/projects/itextsha ...

  9. react 项目遇到的警告集锦

    1.  2.

  10. 2017ACM暑期多校联合训练 - Team 6 1002 HDU 6097 Mindis (数学)

    题目链接 Problem Description The center coordinate of the circle C is O, the coordinate of O is (0,0) , ...