一、Python简介
二、Python与其他语言对比
- C: 机器码
- 其他高级语言: 字节码 -> 机器码
Python 和 C Python这门语言是由C开发而来
对于使用:Python的类库齐全并且使用简洁,如果要实现同样的功能,Python 10行代码可以解决,C可能就需要100行甚至更多.
对于速度:Python的运行速度相较与C,绝逼是慢了
Python 和 Java、C#等
对于使用:Linux原装Python,其他语言没有;以上几门语言都有非常丰富的类库支持
对于速度:Python在速度上可能稍显逊色
所以,Python和其他语言没有什么本质区别,其他区别在于:擅长某领域、人才丰富、先入为主。
三、Python的种类
- CPython : 代码 -> C字节码 -> 机器码 (一行一行)
- pypy: 代码 -> C字节码 -> 机器码 全部转换完 -> 执行
- 其他Python:代码 -> 其他字节码 -> 机器码
四、Python 安装
1、Python规则
1. 安装: python解释器
2. 写程序
C:\Python35\python.exe D:\1.txt
# a. 打开文件,读取文件内容
# b. 词法分析,语法分析
# c. 字节
- 解释器
windows:
C:\Python35\python.exe D:\1.txt
C:\Python35\python.exe
Linux:
C:\Python35\python.exe D:\1.txt
C:\Python35\python.exe
头部注释如下:
#!/usr/bin/env python
- 潜规则
.py 结尾
2、编码
ASCII:英文字母,最多8位(一个字节)来表示,最多表示256个字符。
万国码:Unicode 它为每种语言中的每个字符设定了统一并且唯一的二进制编码,最少由 16 位来表示(2个字节),即:2 **16 = 65536,
注:此处说的的是最少2个字节,可能更多
中文3个字节,24位表示
UTF-8:是对万国码的优化和压缩。对所有语言进行了分类,英文 用一个字节,中文3个字节
gbk,gb2312 只适合中国 中文,用2个字节表示
提示:建议使用UTF-8 编码
告诉python解释器,用什么编码来执行源代码,即设置头部信息模板
#!/usr/bin/env python
# -*- coding: utf-8 -*-
print("hello world“)
3、pycharm
- 使用
1. new project 新建项目
2. new 创建文件夹
3. new 创建py文件
4. 在py文件中右键, run xx.py 运行 .py 文件。
- 文件编码 关键词 coding 选择 utf-8
- 文件模板:关键词 template 头部两行 建立模板
#!/usr/bin/env python
# -*- coding: utf-8 -*-
- 改变大小:mouse 鼠标滑动
4.注释
#内容 单行注释
“”“ 内容 ”“” 多行注释
解释 备注,不会被程序运行。
5、pyc 文件
执行Python代码时,如果导入了其他的 .py 文件,那么,执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译之后产生的字节码。
ps:代码经过编译可以产生字节码;字节码通过反编译也可以得到代码。
6.变量
声明变量
例如: abed name djif 等等都是可以是变量, 就是指内存里储存的内容。
变量命名规格:
字母、数字、下划线的任意组合
数字不能开头
不能使用python 中的关键词
['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'
规划有意义 使用_ 下划线分割
name=“sunchenguang”
密码=“guang520jing”
7、输入与输出
input
输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即
import gatpass
gatpass.gatpass
例如:
1 user=input("用户名:")
2 pwd=input("密码:")
3 print("user,pwd")
1 import gatpass
2 user=input("用户名:")
3 pwd=gatpass.gatpass("密码:")
4 print(“user,pwd”)
8、条件语句
if 条件:如果
elif 条件:第二个如果
else 否则
例如:
1 import getpass
2 name = raw_input('请输入用户名:')
3 pwd = getpass.getpass('请输入密码:')
4 if name == "alex" and pwd == "cmd":
5 print "欢迎,alex!"
6 else:
7 print "用户名和密码错误"
1 username = input('>>>')
2 if username == 'alex'
3 print('普通管理')
4 elif username == 'oldboy':
5 print('超级管理')
6 elif username == '郭少龙':
7 print('人')
8 elif username == '刘一':
9 print('装逼犯')
10 else:
11 print('再见...')
12 print('end')
9、while 循环语句:
while True: 永远是真理 一直循环
while 条件: 循环的条件
break :终止循环
continue:停止当前循环,跳入下次循环
10、其他内容:
i = 0
i += 1 # i = i + 1
3%2 #奇数和偶数:取余数如果是0为偶数,如果是1为奇数
age = 18
name = 'alex'
name = "alex"
name = """alex"""
name = "'alex'"
name = """
asdfalex
asdfasdf
asdf
"""
练习题:
1、使用while循环输入 1 2 3 4 5 6 8 9 10
2、求1-100的所有数的和
3、输出 1-100 内的所有奇数
4、输出 1-100 内的所有偶数
5、求1-100所有奇数和
6、求1-100所有偶数和
7、求1-2+3-4+5 ... 99的所有数的和
8、用户登陆(三次机会重试)
练习题答案:
# i = 0
# while i < 10:
# i = i + 1
# if i == 7:
# continue
# print(i)
# i=0
# y=0
# while i< 100:
# i=i+1
# y=y+i
# print(y)
# i=0
# while i < 100:
# i=i+1
# if i%2==1:
# print(i)
# i=0
# while i < 100:
# i=i+1
# if i%2==0:
# print(i)
# i=0
# y=0
# while i < 100:
# i=i+1
# if i%2==1:
# y=y+i
# print(y)
# i=0
# y=0
# while i < 100:
# i=i+1
# if i%2==0:
# y=y+i
# print(y)
# i=0
# y=0
# z=0
# while i < 100:
# i=i+1
# if i%2==1:
# y=y+i
# elif i%2==0:
# z=z-i
# print(y+z)
# name="sunchenguang"
# mima="guang520jing"
# i=0
# while i<3:
# user=input("用户名:")
# pwd=input("密码:")
# # print(user,pwd)
#
# i=i+1
# if user==name and pwd==mima:
# print("登录成功")
# break
# else:
# print("滚蛋")