day01_雷神_Python入门
day01
1.编程语言
主流的像C、java、python、php、C#、等,可以从不同维度分类如下:
- 机器码和字节码
- 机器码: C
- 字节码: 其他
note: 机器码是电脑的CPU可直接解读的数据
字节码通常情况下它是已经经过编译,但与特定机器码无关。字节码通常不像源码一样可以让人阅读,而是编码后的数值常量、引用、指令等构成的序列。
- 解释型和编译型
- 解释型:Python、php、java
- 编译型:C#、C
note: 将某种高级语言源代码一次性“翻译”成该平台硬件执行的机器码,这个转换过程称为编译(Compile)
解释型语言是指使用专门的解释器对源程序进行逐行解释成特定平台的机器码并立即执行的语言。
- 难易程度
- C
- C#、Java
- PHP
- Python(类库齐全/模块)
总结
- 安装解释器
- 学习语言规则
- 编写代码
- 解释器运行
2.安装解释器
- cpython解释器(*)
- jpython解释器
- ironPython解释器
- rubyPyhton解释器
note: pypy是另一个Python解释器,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。 而cpython,需要先将你的代码解释成中间的字节码,在去转换成机器码执行。
解释器版本
- 2.7.14
- 3.6.5
note: 区别有以下几个方面
1、 2的默认编码是ascii码,而3的默认编码是utf8
编写程序
#!/usr/bin/python相当于写死了python路径;
#!/usr/bin/env python会去环境设置寻找python目录,推荐这种写法
3.编码
ascii码:一个字节,8位来表示,只英文使用
unicode码: 不能存储,四个字节,32位来表示,也叫万国码
utf8: 压缩unicode,英文用一个字节,中文用三个字节表示
gbk: 亚洲使用,中文是两个字节
4.IDE-Pycharm
实用配置:
file->settings->搜索mouse->general(改变字体大小)
file->settings->file and code template(改变基础模板)
#!/usr/bin/env python
# -*- coding:utf-8 -*-
使用:启动Pycharm:选择已存在的解释器
打开Settings窗口后,选择Project: prjectName下面的Porject Interpreter
5.语法规则
输入输出
输出:print("my name")
输入: name = input("请输入你的名字:"),输入的值需要有变量接收。
变量
变量名规则:
数字、字母、下划线;
不能数字开头;
不能用python关键字。
note: 不能写大写,大写的叫全局变量。
示例一:
name = "alex"
new = name
name = "eric"
print(new)
这里的new指向值等于alex的内存空间,下边即使换了name指向的内存空间,new的值也不会变化,一行一行读。
数据类型
- 整型
age = 18
- 字符串
三引号多行输出;
字符串取值通过索引;
name = "紫薇"
n1 = name[0] 获取紫
n2 = name[1] 获取微
- 列表
user_list = ["alex","eric","houbinglei"]
print(user_list[0]) 输出alex
user_list = ["紫薇","尔康","18","海量","小鸡"]
for xxx in user_list:
print(xxx)
if xxx == '18':
break 只输出到18,就跳出当前for循环
字典
user_info = {"name":"紫薇","age":18} n5 = user_info["name"]
n6 = user_info["age"]
user_info['count'] = 666
输出: {"name":"紫薇","age":18,"count":666}
note: 记得字典里的中括号里加引号
n8 = [
"alex",
{'name':'日天','age':18},
[11,22,33]
]
n8[1]["age"] = 19 数据类型嵌套,通过key修改字典元素中的value
if语句
if 条件:
pass
elif 条件:
pass
else:
pass
循环语句while
while True:
print(1)
while True:
print(2)
break 循环输出1、2
for循环
for item in user_list:
if item['username'] == user and item['password'] == pwd:
flag = True
break
else:
pass
当flag等于True时候,break跳出当前for循环,后边的user_list内容不再循环。
作业:用户三次登录机会
user_list = [
{'username':'alex', 'password':'123', 'count':0 },
{'username':'eric', 'password':'123', 'count':0 },
{'username':'tony', 'password':'123', 'count':0 },
{'username':'oldboy', 'password':'123', 'count':0 },
]
i = 1
flag = "false"
while i < 4:
user = input("请输入用户名:")
pwd = input("请输入密码:")
for item in user_list:
if item['username'] == user and item['password'] == pwd:
flag = "True"
break
else:
pass
if flag == "True":
print("登录成功")
break
else:
print('登录第%s次' %i)
i += 1
if flag == "false":
print("超过登录次数")
else:
pass
day01_雷神_Python入门的更多相关文章
- [19/09/02-星期一] 基础知识_Python入门
一.计算机基础 用户界面:TUI-文本交互界面: GUI-图形化交互界面 命令行:就是一种文本交互界面,可以使用一个一个的指令来操作计算机.任何计算机的操作系统都包含命令行(Windows.Linux ...
- day01_前言、入门程序、常量、变量
day01_前言.入门程序.常量.变量 sysout :System.out.println(); Java 概述 本节主要内容: java 概述.常 DOS 命令.JRE.JDK 与 JVM.环境搭 ...
- 鱼书_第一章_Python入门
Python版本 Python有Python 2.x和Python 3.x两个版本.两个版本不兼容,可能出现用Python 3.x编的代码不能被Python 2.x执行的情况. Python安装 An ...
- 编程零基础应当如何开始学习 Python?
提前说一下,这篇福利多多,别的不说,直接让你玩回最有手感的怀旧游戏,参数贴图很方便自己可以根据喜好修改哦. 本篇通过以下四块展开,提供大量资源对应. 选一个好版本 有没有看过<在下坂本,有何贵干 ...
- mysql入门与进阶
MySQL入门与进阶 需求:对一张表中的数据进行增删改查操作(CURD) C:create 创建 U:update 修改 R:read 读|检索 查询 D:delete 删除涉及技术:数据库 1.数据 ...
- 多本Python极速入门最佳书籍,不可错过的Python学习资料!
Python作为现在很热门的一门编程语言,介于Python的友好,许多的初学者都将其作为首选,为了帮助大家更好的学习Python,我筛选了2年内优秀的python书籍,个别经典的书籍扩展到5年内. ...
- 这五本Python急速入门必读的书,送给正在学习Python的你!
书籍是人类进步的阶梯,这句话从古至今都是适用的.为什么会这么说呢?书籍,它记录了人们实践的经验,这些经验有助于我们快速的学习,对于编程学习来说也不例外,今天就给大家带来了以下的书籍干货,希望能够帮助到 ...
- [新手必备]Python 基础入门必学知识点笔记
Python 作为近几年越来越流行的语言,吸引了大量的学员开始学习,为了方便新手小白在学习过程中,更加快捷方便的查漏补缺.根据网上各种乱七八糟的资料以及实验楼的 Python 基础内容整理了一份极度适 ...
- Matplotlib 精简实例入门
Matplotlob 简明实例入门 通过几个实例,快速了解matplotlib.pyplot 中最为常见的折线图,散点图,柱状图,直方图,饼图的用法 如果您需要更为详细的内容,请参考官方文档: htt ...
随机推荐
- spring batch批处理框架学习
内如主要来自以下链接: http://www.importnew.com/26177.html http://www.infoq.com/cn/articles/analysis-of-large-d ...
- 简单使用limma做差异分析
简单使用limma做差异分析 Posted: 五月 12, 2017 Under: Transcriptomics By Kai no Comments 首先需要说明的是,limma是一个非常全 ...
- Python-多进程VS多线程
多进程VS多线程 功能: 进程:能够完成多任务,比如,同时运行多个QQ 线程:能够完成多任务,比如一个QQ中的多个聊天窗口 定义 进程:系统进行资源分配和测试的一个独立单位,线程自己基本上不拥有系统资 ...
- C++基础教程(总结)
内容中包含 base64string 图片造成字符过多,拒绝显示
- centos安装tomcat7.0.70
抄自:https://www.cnblogs.com/www1707/p/6592504.html apache-tomcat-7.0.70jdk-7u67-linux-x64 下载tomcathtt ...
- 将hibernate框架融入到spring框架中
第一步:首先创建表: create table user( id int(2) primary key,name varchar(20),password varchar(20)); 第二步:建立d ...
- 用EventLog Analyzer的预定义报表和告警来进行Syslog管理
用EventLog Analyzer的预定义报表和告警来进行Syslog管理 系统日志(Syslog)管理是几乎所有企业的重要需求.系统管理员将syslog看作是解决网络上系统日志支持的系统和设备性能 ...
- 2018.12.23 bzoj4516: [Sdoi2016]生成魔咒(后缀自动机)
传送门 samsamsam入门题. 题意简述:给出一个串让你依次插入字符,求每次插入字符之后不同子串的数量. 显然每次的变化量只跟新出现的nnn个后缀有关系,那么显然就是maxlenp−maxlenl ...
- MySQL/Oracle视图的创建与使用
1.什么是视图? 视图是一个虚拟的表,是一个表中的数据经过某种筛选后的显示方式,视图由一个预定义的查询select语句组成. 2.视图的特点. 视图中的数据并不属于视图本身,而是属于基本的表,对视 ...
- maven的传递性依赖
一.概念: 假如有maven项目A,项目A依赖项目B,项目B依赖项目C,我们说A对B是第一直接依赖,B对C是第二直接依赖,那么他们的依赖关系:A---->B----->C,那么我们执行项目 ...