本节内容

  1. Python介绍
  2. 编程语言分类
  3. Hello World程序
  4. 变量
  5. 字符编码
  6. 用户输入
  7. 数据类型初识
  8. 表达式if ...else语句
  9. 表达式while 循环
  10. 表达式for 循环
  11. break and continue
  12. 嵌套
  13. 作业需求

一、python介绍

python的创始人---吉多·范罗苏姆(Guido van Rossum)----1989年

目前Python主要应用领域:

  • 云计算: 云计算最火的语言, 典型应用OpenStack
  • WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django
  • 科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas
  • 系统运维: 运维人员必备语言
  • 金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测
  • 图形GUI: PyQT, WxPython,TkInter

Python在一些公司的应用: 

  • 谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬虫、Google广告等项目都在大量使用Python开发
  • CIA: 美国中情局网站就是用Python开发的
  • NASA: 美国航天局(NASA)大量使用Python进行数据分析和运算
  • YouTube:世界上最大的视频网站YouTube就是用Python开发的
  • Dropbox:美国最大的在线云存储网站,全部用Python实现,每天网站处理10亿个文件的上传和下载
  • Instagram:美国最大的图片分享社交网站,每天超过3千万张照片被分享,全部用python开发
  • Facebook:大量的基础库均通过Python实现的
  • Redhat: 世界上最流行的Linux发行版本中的yum包管理工具就是用python开发的
  • 豆瓣: 公司几乎所有的业务均是通过Python开发的
  • 知乎: 国内最大的问答社区,通过Python开发(国外Quora)
  • 春雨医生:国内知名的在线医疗网站是用Python开发的
  • 除上面之外,还有搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝 、土豆、新浪、果壳等公司都在使用Python完成各种各样的任务。

二、编程语言分类

编译型和解释型

动态语言和静态语言

强类型定义语言和弱类型定义语言

python是一门动态解释性的强类型定义语言。

python的优缺点

先看优点

  1. “优雅”、“明确”、“简单”
  2. 开发效率非常高,Python有非常强大的第三方库,基本上你想通过计算机实现任何功能
  3. 高级语言
  4. 可移植性
  5. 可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
  6. 可嵌入性————你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。

再看缺点:

  1. 速度慢,Python 的运行速度相比C语言确实慢很多,跟JAVA相比也要慢一些,你要写对速度要求极高的搜索引擎等,这种情况下,当然还是建议你用C去实现的。
  2. 代码不能加密,因为PYTHON是解释性语言,它的源码都是以名文形式存放的
  3. 线程不能利用多CPU问题,这是Python被人诟病最多的一个缺点。 Python的线程是操作系统的原生线程。

python解释器

  • cpython: 官方版本
  • PyPy: 是另一个Python解释器,它的目标是执行速度。
  • Jpython
  • Ironpython

三、Hello World程序

Linux中

#!/usr/bin/env python   自动寻找环境变量
#!/usr/bin/python 固定 print("hello world")

  

命令行界面执行hello.py

pycharm中运行程序

1 #include <iostream>
2 int main(void)
3 {
4 std::cout<<"Hello world";
5 }

C++

1 #include <stdio.h>
2 int main(void)
3 {
4 printf("\nhello world!");
5 return 0;
6 }

C

1 public class HelloWorld{
2 // 程序的入口
3 public static void main(String args[]){
4 // 向控制台输出信息
5 System.out.println("Hello World!");
6 }
7 }

Java

1 <?php
2 echo "hello world!";
3 ?>

php

1 puts "Hello world."  

RUBY

1 package main
2
3 import "fmt"
4
5 func main(){
6
7 fmt.Printf("Hello World!\n God Bless You!");
8
9 }

Go

四、pycharm设置

project路径设置,python版本设置

开头默认设置

五、变量

变量声明,赋值

name = "Alex Li"
name2 = name
print("My name is ",name,name2) name = "Paoche ge"
print(name,name2)

 

变量定义的规则:

      • 变量名只能是 字母、数字或下划线的任意组合
      • 变量名的第一个字符不能是数字
      • 以下关键字不能声明为变量名
        ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
2name
name of alex
$name
name-
_name
_____name a
b
c
a1
a2 变量要有含义 age job name 姓名="alex li"
xingming #gfofoldboy
gf_of_oldboy = "Chen rong hua"
GFOfOldboy = "Chen rong hua" #驼峰 #const 常量
#PIE = (python常量大写)

六、字符编码

狼烟

python2.x 不能识别中文,开头加 #coding=utf-8

python3.x可以识别中文

注释

msg =  '''注释多行,打印多行
2name
name of alex
$name
name-
_name
_____name
''' print(msg )

  

七 、字符串格式化输出

username = input("username: ")
passwd = input("passwd: ") print(username,passwd)

raw_input ( python 2.x)  等同 input (python3.x)

input  (python 2.x )   ??

字符串拼接

#开辟好几块内存,效率低下
name = input("name: ")
age = int(input("age:")) #integer
print(type(age),type( str(age) ))
job = input ("job:")
salary = input("salary:") info = '''
--------- info of ''' + name + ''' ----
Name: ''' + name + '''
Age: ''' + age + '''
Job: '''+ job + '''
Salary:'''+ salary print(info)

方法1:加号

info = '''
-------- info of %s ---
Name:%s
Age:%d
Job:%s
Salary:%s
'''% (name,name,age,job,salary)
print(info)

方法2:%s

info2 = '''
-------- info of {_name} ---
Name:{_name}
Age:{_age}
Job:{_job}
Salary:{_salary}
'''.format(_name=name,
_age=age,
_job=job,
_salary=salary
)
print(info2)

方法3: .format

info2 = '''
-------- info of {0} ---
Name:{0}
Age:{1}
Job:{2}
Salary:{3}
'''.format(name,age,job,salary)
print(info2)

方法3-2: .format

八、if ...else

场景一、用户登陆验证

import getpass

username = input('请输入用户名:')
passwd = getpass.getpass('请输入密码:')

print(username,passwd)
# 提示输入用户名和密码

# 验证用户名和密码
# 如果错误,则输出用户名或密码错误
# 如果成功,则输出 欢迎,XXX!
username = "alex"
passwd = "redhat"
_username = input("username: ")
_passwd = input("passwd: ") if username == _username and passwd == _passwd:
print("welcome {name} login...".format(name=username))
else:
print("Invalid username or passwd")

场景二、猜年龄游戏

 age_of_oldboy = 56
age = int( input("guess age :"))
if age_of_oldboy == age:
print("you get it")
elif age_of_oldboy > age:
print("think bigger...")
else:
print("think smaller...")

九、while

 count = 0
while True:
print("count: ",count)
count = count +1 # count += 1
if count == 1000:
break #跳出循环,执行下一步

guess while.py

 while True:
age = int( input("guess age :"))
if age_of_oldboy == age:
print("you get it")
break
elif age_of_oldboy > age:
print("think bigger...")
else:
print("think smaller...")

3次猜不到退出

 age_of_oldboy =
count =
while True:
if count == :
break
age = int( input("guess age :"))
if age_of_oldboy == age:
print("you get it")
break
elif age_of_oldboy > age:
print("think bigger...")
else:
print("think smaller...")
count +=

优化:

 age_of_oldboy =
count =
while count < :
age = int( input("guess age :"))
if age_of_oldboy == age:
print("you get it")
break
elif age_of_oldboy > age:
print("think bigger...")
else:
print("think smaller...")
count +=

优化后:

count =
while count < :
age = int( input("guess age :"))
if age_of_oldboy == age:
print("you get it")
break
elif age_of_oldboy > age:
print("think bigger...")
else:
print("think smaller...")
count +=
if count == :
print("you have trying enough... fuck off")

终极优化:

 age_of_oldboy =
count =
while count < :
age = int( input("guess age :"))
if age_of_oldboy == age:
print("you get it")
break
elif age_of_oldboy > age:
print("think bigger...")
else:
print("think smaller...")
count +=
else:
print("you have trying enough... fuck off")

九、for

for循环:

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

默认为1,步长为2  

for i in range(0,10,2):
print("loop..-",i)

 

3次猜年龄,for语句

 for i in range():
age = int( input("guess age :"))
if age_of_oldboy == age:
print("you get it")
break
elif age_of_oldboy > age:
print("think bigger...")
else:
print("think smaller...")
else:
print("you have trying enough... fuck off")

 

guess任性玩

 age_of_oldboy =
count =
while count < :
age = int( input("guess age :"))
if age_of_oldboy == age:
print("you get it")
break
elif age_of_oldboy > age:
print("think bigger...")
else:
print("think smaller...")
count +=
if count == :
countine_confirm= input("dou you want to go on ...")
if countine_confirm != "n":
count =

十、  continue

 for i in range(,):
if i < :
print("loop...",i)
else:
continue #跳出本次循环,进入下一次循环
print("this is continue")
print("hehehe")

debug调试

插入断点--

十一、嵌套

for i in range():
print("------",i)
for j in range():
print(j)
for i in range():
print("------",i)
for j in range():
print(j)
if j > :
break

十二、作业

Python day1 ---python基础1的更多相关文章

  1. python,Day1,基础1

    主要内容 1.python介绍 2.发展史 3.安装 4.hello world程序 5.变量 6.用户输入 7.模块 8.数据类型 9.数据运算 10.if...else语句 11.while循环 ...

  2. python day1 python介绍,安装及运算符

    目录 python day1 1. 不同编程语言的对比 2. 为什么学python? 3. python的种类 4. python的安装(windows系统) 5. 导入模块或包 6. pyc文件 7 ...

  3. Python day1 ---python基础1.1

    1.模块初识2..pyc是个什么鬼?3.数据类型初识 4.数据运算5.入门知识拾遗 1.模块初识 sys模块 import sys print(sys.path) #打印环境变量 'D:\\Pycha ...

  4. Day1 - Python基础1 介绍、基本语法、流程控制

    Python之路,Day1 - Python基础1   本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼 ...

  5. Python之路,Day1 - Python基础1

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  6. Day1 Python 介绍及基础

    ******************本文目录******************一.Pyhon基本介绍 1.Why Python? 2. Python 是一门什么样的语言? 3.Python的优缺点: ...

  7. Python之路,Day1 - Python基础1(转载Alex)

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  8. Python之路,Day1 - Python基础1 --转自金角大王

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  9. Python之路,Day1 - Python基础1 介绍、基本语法、流程控制

    本节内容 1.python介绍 2.发展史 3.python 2.x or python 3.x ? 4.python 安装 5.第一个程序 Hello World 程序 6.变量 7.用户输入 8. ...

随机推荐

  1. Entity Framework 6.X实现记录执行的SQL功能

    Entity Framework在使用时,很多时间操纵的是Model,并没有写sql语句,有时候为了调试或优化等,又需要追踪Entity framework自动生成的sql(最好还能记录起来,方便出错 ...

  2. jQuery 和 YUI (Yahoo User Interface) 各自的优缺点有哪些?具体的使用场景是怎样的?

    张经纬,前端工程师 知乎用户.赵勇杰.知乎用户 等人赞同 其实jQuery和YUI的侧重点是不一样的. jQuery专注于DOM的操作,他通过继承的方式给传入的对象增加了新的方法,从而使我们可以通过链 ...

  3. CSS 构造表格

    表格边框 CSS 中设置表格边框,请使用 border 属性: <style type="text/css"> table{ border:1px solid red; ...

  4. 2015 ICL, Finals, Div. 2【ABFGJK】

    [题外话:我......不补了......] 2015 ICL, Finals, Div. 2:http://codeforces.com/gym/100637 G. #TheDress[水] (st ...

  5. 我做的一个websocket的demo(php server)

    notice: 通过命令行执行php文件  如 php -q c:\path\server.php 通过本地web服务器访问 http://127.0.0.1/websocket/index.php即 ...

  6. 20165318 2017-2018-2 《Java程序设计》第四周学习总结

    20165318 2017-2018-2 <Java程序设计>第四周学习总结 IDEA安装 按照娄老师Intellj IDEA 简易教程,我下载了IDEA但是由于没有注册学校邮箱,我没办法 ...

  7. 如何1秒批量提取电脑文件夹中的所有文件、文件夹名字到txt/excel

    01  在工作,我们经常会遇到这样的情况,有时候我们在一个文件夹中放了很多的文件,或者是这个文件夹中有很多的子文件夹,每一个子文件夹的名字又不同,也没有什么样的规律, 02  但是我们要整理一下这个文 ...

  8. Hive学习之路 (七)Hive的DDL操作

    库操作 1.创建库 语法结构 CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name [COMMENT database_comment] //关 ...

  9. Docker存储方式选型建议

    转自:https://segmentfault.com/a/1190000007168476 第一部分 问题诊断 事情从一次实施项目说起,我们需要帮助客户将他们的应用容器化并在数人云平台上发布此应用. ...

  10. python file的3中读法

    f.read()  整个文件读入到内存,全部放入到一个string中 f.readlines() 文件全部内容解析成行列表,自带\n,需要print i, f.readline()一行一行,返回字符串 ...