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 ...
随机推荐
- 让eclipse调试和豌豆荚并存
豌豆荚有一个设置 设置->高级设置->开发者模式 勾上开发者模式 确定. 你什么手机的驱动都不用安装了. 就可以直接使用豌豆荚,也可以使用eclipse进行调试.
- c++11 时间相关操作练习
博客和书籍资料 来自该地址 https://www.cnblogs.com/qicosmos/category/490693.html 自行编写相应代码进行学习 // TimeTest.cpp: 定义 ...
- Visual code 搭建Vue项目
使用VS Code搭建Vue项目 1.安装 VScode 2..安装最新node.JS 2.安装cnpm镜像 淘宝镜像(node自带安装了npm,故不再安装) npm install -g cnpm ...
- 软件测试基础Ⅲ(osi7层协议,测试模型,LoadRunner组件,软件质量模型)
osi7层开放式系统互连网络模型 1.物理层:主要定义物理设备标准,如网线的接口类型.光纤的接口类型.各种传输介质的传输速率等.它的主要作用是传输比特流(就是由1.0转化为电流强弱来进行传输,到达目的 ...
- Linux学习笔记:Shell脚本学习
概念 真正能够控制计算机硬件(CPU.内存.显示器等)的只有操作系统内核(Kernel),图形界面和命令行只是架设在用户和内核之间的一座桥梁. 由于安全.复杂.繁琐等原因,用户不能直接接触内核(也没有 ...
- Java 读取HDFS文件系统
最近有个需求,计算用户画像. 系统大概有800W的用户量,算每个用户的一些数据. 数据量比较大,算用hive还是毫无压力的,但是写的oracle,在给出数据给前端,就比较难受了. 然后换了种解决方法: ...
- php中 isset函数有什么功能
isset是判断一个变量是否定义过即使它没有值,返回值也是true比如$name="";或var $name;那么if(isset($name))echo 1;它也会输出1,因为$ ...
- windows下解决端口被占用的问题
步骤一.Windows查看所有的端口 点击电脑左下角的开始,然后选择运行选项,接着我们在弹出的窗口中,输入[cmd]命令,进行命令提示符.然后我们在窗口中输入[netstat -ano]按下回车,即会 ...
- 第1章 Python数据模型
#<流畅的Python>读书笔记 # 第一部分 序幕 # 第1章 Python数据模型 # 魔术方法(magic method)是特殊方法的昵称.于是乎,特殊方法也叫双下方法(dunder ...
- js,javascript,获取地址栏参数
function GetQueryString(name) { var reg = new RegExp("(^|&)"+ name +"=([^&]*) ...