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 ...
随机推荐
- HISAT,sTRINGTIE,ballgown三款RNA-seq信息分析软件
HISAT,sTRINGTIE,ballgown三款RNA-seq信息分析软件 2015年04月02日 11:35:47 夜丘 阅读数:8940 标签: 生物 更多 个人分类: 论文笔记 Bowt ...
- generic_netlink 用法
参考资料: https://wiki.linuxfoundation.org/networking/generic_netlink_howto generic_netlink 框架 +-------- ...
- SWE_Browser编译
QRD从android4.4开始使用SWE_Browser,android原始代码中不再提供Browser.最近在做一个QRD8916_113517 CMCC入库版本,需要使用SWE_Browser. ...
- SpringBoot的读取properties文件的方式
转载:https://www.imooc.com/article/18252一.@ConfigurationProperties方式 自定义配置类:PropertiesConfig.java pack ...
- python文件打包
python文件打包 先安装 pip3 install --upgrade pyinstaller 进入到文件的当前目录 ,在命令行中输入: pyinstaller -F -w[文件名].py 其中- ...
- iOS知识基础篇 static
static关键字的作用 一.隐藏 通过static修饰的函数或者变量,在该文件中,所有位于这条语句之后的函数都可以访问,而其他文件中的方法和函数则不行: 二.静态变量 类方法不可以访问实例变量(函 ...
- Graphviz 环境变量设置
今天晚上解决了一个错误,如下:
- JS页面跳转大全
所谓的js页面跳转就是利用javesrcipt对打开的页面ULR进行跳转,如我们打开的是A页面,通过javsrcipt脚本就会跳转到B页面.目前很多垃圾站经常用js跳转将正常页面跳转到广告页面,当然也 ...
- 2019.01.13 bzoj4137: [FJOI2015]火星商店问题(线段树分治+可持久化01trie)
传送门 题意:序列上有nnn个商店,有两种事件会发生: sss商店上进购标价为vvv的一个物品 求编号为[l,r][l,r][l,r]之间的位置买ddd天内新进购的所有物品与一个数xxx异或值的最大值 ...
- 安装完ubuntu后需要安装的软件
ubuntu安装完sudo apt-get install vim g++ openssh-server libgl1-mesa-dev vmtools