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 ...
随机推荐
- javascript 高级程序设计 二
这里我们直接进入主题: 在JS刚刚开始的时候,必须面临一个问题,那就是如何使的JS的加载和执行不会影响web核心语言HTML的展示效果,和HTML和谐共存. 在这个背景下<script>标 ...
- hisat2+stringtie+ballgown
hisat2+stringtie+ballgown Posted on 2016年11月25日 早在去年九月,我就写个博文说 RNA-seq流程需要进化啦!http://www.bio-info-tr ...
- 浅谈多重检验校正FDR
浅谈多重检验校正FDR Posted: 四月 12, 2017 Under: Basic By Kai no Comments 例如,在我们对鉴定到的差异蛋白做GO功能注释后,通常会计算一个p值 ...
- qRT-PCR 注意事项
师姐呕心沥血整理的 qRT-PCR 注意事项 关键词: qRT-PCR 注意事项2017-07-17 10:17 来源:生物学霸 点击次数:1257 大家都在说 qRT-PCR 实验原理.引物设计.结 ...
- Spring 循环引用(二)源码分析
Spring 循环引用(二)源码分析 Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698.html) Spring 循环引用相关文章: & ...
- libmysqlclient version
You probably know that the version number of the libmysqlclient.so library has changed from .16 to . ...
- h5常用标签语义
<article>定义页面独立的内容区域.例如外部来的文章. <aside>定义页面的侧边栏内容.<aside> 标签定义 <article> 标签外的 ...
- 社区发现(Community Detection)算法(转)
作者: peghoty 出处: http://blog.csdn.net/peghoty/article/details/9286905 社区发现(Community Detection)算法用来发现 ...
- substr()和substring()函数
区别:主要是两者的参数不同 功能:相似. substr :返回一个从指定位置开始的指定长度的子字符串 substring :返回位于 String 对象中指定位置的子字符串. 用法: stringva ...
- 219.01.19 bzoj3252: 攻略(长链剖分+贪心)
传送门 长链剖分好题. 题意:给一棵带点权的树,可以从根节点到任一叶节点走kkk次,走过的点只能计算一次,问kkk次走过的点点权值和最大值. 思路: 考虑将整棵树带权长链剖分,这样链与链之间是不会重复 ...