Python简介
Python是著名的"龟叔"Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。
和其他语言对比
C语言通过编译器编译为机器码
其他高级语言 编译器将源码编译成字节码,特定平台上的虚拟机器将字节码转译为可以直接执行的指令。
python种类
Cpython ,通常所说python为CPython. 另有其他语言编写的 入java编写的就jpython 等. 执行效率最高为pypy
Python基础
安装 到Python.org 对应平台下载安装
windows下执行方法
D:\python36\python.exe D:\py\helloworld.py python程序打开文件读取内容,然后分析语法编译执行
Linux
python ./helloworld.py 也可添加执行权限 chmod u+x ./helloworld.py 然后直接执行 ./helloworld
python下编写需要加入头部信息 #!/usr/bin/python
计算机编码
ASCII码 仅支持英文和标点常用符号
unicode 万国码 ,增加存储位长.支持多语言
utf-8 对部分unicode进行压缩,以节约存储空间
另有仅支持中英的国标编码 gbk等
Python编码相关
python3默认utf-8 ,为保险起见.所有Python文件开头第二行加上UTF-8支持 # -*- coding:utf-8 -*-
IDE
方便错误提示及查找bug 使用集成开发工具 pycharm
基本使用方法
new project
new directory
new pyFile
右键执行 run x.py
pycharm 基本设置 File -- default setting 搜索coding 更改为utf8 搜索template 更改模板头文件
file -- setting 搜索mouse 打开鼠标滚动缩放
更改编码
更改默认文件位置头
添加环境变量和编码
更改鼠标缩放
File settings
Python中的注释
#号开头为注释
""" """ 三个双引号 可以注释多行
注释多行也可以使用快捷键 Ctrl + K
Python字节码未见为pyc
Python中的变量命令规范
可以包含 字母 数字 下划线 但是不能使用内置关键字 如 if else等
不能使用数字开头
名字过长的变量建议使用下划线分割 , 另有变量中关键字第二个大写的命名方法 如:myName='x'
示例
name = 'xp'
name = "wu"
name = """wuxp""" 用于多行
name="""xxxasdfasdfasdfas
asdfasdfasdf
adsfasdef
"""
注意 name = "'xp'" 变量值为 'xp' name='"xp"' 变量为"xp"
Python输入输出
输入使用input,输出为print. getpass用于密码输入,默认不显示输入内容(在IDE中执行无效)
执行结果
条件判断语句
if 判断条件:
执行内容
else:
执行内容
示例
import getpass
name = input("Please input your name")
passwd = getpass.getpass("Please input password")
# print(name)
# print(passwd)
if name == 'wuxp' and passwd == 'wuxp':
print('login')
else:
print('login faild')
if elif条件语句
if 条件:
…
elif条件:
…
else:
…
示例:
循环语句
语法规则
L1=[1,2,2,3]
for item in L1:
print(item)
while 条件:
continue
break
简单示例
示例 使用while循环输入 1 2 3 4 5 6 8 9 10
此示例也可判断i的值之后直接pass else执行print
.
示例 while打印1到100的和
打印100以内的奇数,
打印偶数同理, 求余可以放在条件判断位置或者先取余赋到变量
示例 计算 1-2+3-4+5…100
三次登陆尝试
猜数字示例
python运算符
+ - * / 加减乘除
** 幂运算 如 2**10 得1024
// 底板除 只取除法结果的整数部分
2.比较运算
== 等于
!=或<> 不等于
+= -= 示例 i = i + 1 简写为 i += 1
逻辑运算符
and 与
or 或
not 非
示例:
注意优先级 执行顺序 如果and 第一个为flase 后面不用再看为flase . 如果为or 第一个为真 永远为真.
可以加括号改变优先级
5.成员运算符
in
not in
判断字符串是否包含
示例
-------------------------------------------------------------------Python数据类型----------------------------------------------------------------------------------------------------------
1.整数(Python3已不再额外分长整型)
示例 a = 3 或 a = int(3)
转换(字符无法转换为字符串)
age = 18
new_age=int(age)
print(type(age)) #查看变量类型
2.布尔值,常用于条件判断循环
示例 a = True 或 b = Flase
转换
v=bool(0) #只有零是Flase,其余均为True. 字符串为空""是Flase,其余均为真.
3.字符串
示例 a = "wuxp"
a = str ('wuxp')
转换 age = 19
new_age = str(age)
转换的意义是为了同种数据类型进行比较.
字符串拼接
示例
name = 'xp'
job = 'coder'
new_str = name + job
字符串格式化
以上示例也可以写到一行
字符串
移除空白strip 分割split 长度len 索引 切片
移除空白 包括换行符 (可以指定移除的字符)
分割 指定分隔符和第几个位置
长度
运算结果为7 在python3中按字符计算长度
索引
索引第1个位置从0开始
切片
列表和字典
列表基本操作示例
字典
for循环取字典所有的值
列表嵌套
列表嵌套的一个应用示例 用户登录
python文件操作 用户登录
基于文件存储的用户登录程序(3次登录失败,锁定用户) 此处登录成功则重置times为0
#用户文件db内网
#wuxp|123|0
#obama|am1|0
#程序内容
#1.打开文件
file1 = open('db','r') #w代表清空写入
data = file1.read() #file1.write
file1.close()
print(data)
print('--------------------')
#2.更改为字典
user_list=data.split('\n')
print(user_list)
print('--------------------')
list_info_user = []
for item in user_list:
print(item)
print('--------------------')
temp = item.split('|')
print(temp)
print('--------------------')
dict_temp = {
'name':temp[0],
'pwd':temp[1],
'times':temp[2]
}
list_info_user.append(dict_temp)
print(list_info_user)
#3.进行判断
#4.格式转换回原来格式
#5.写回去
target = """wuxp|123|3\nobama\am1|3"""
f2 = open('db','w')
f2.write(target)
f2.close
最后用户登录练习详细完整信息:http://blog.csdn.net/wuxingpu5/article/details/71247852