python学习Day3 变量、格式化输出、注释、基本数据类型、运算符
今天复习内容(7项)
1.语言的分类
-- 机器语言:直接编写0,1指令,直接能被硬件执行
-- 汇编语言:编写助记符(与指令的对应关系),找到对应的指令直接交给硬件执行
-- 高级语言:编写人能识别的字符,要通过编译器或解释器转换为汇编语言最终转换为机器语言的指令交给硬件执行
高级语言 分为编译型和解释型,python为解释型语言。
运行效率最高:机器语言
开发效率最高:高级语言,
2.计算机组成:控制器 + 运算器 + 存储器 + 输入input设备 + 输出output设备
3.三大核心:cpu + 内存 + 硬盘
4.环境的搭建:环境变量不是必须的,但要在终端启动python解释器就一定要搭建python解释器的环境: | pip install 工具,需要搭建pip环境,相当于商城,
5.两种执行方式: 交互式:即时显示结果,临时的不能保存 | 脚本式,可以保存,各有优缺点。
6.变量:
-- 声明: 变量名 = 变量值
-- 变量值:变量名 类型:type(变量名) 地址:id(变量名)
-- == | is: == 值比较 | is地址比较
注:值相同,内存对应的ID(地址可能相同;ID(地址)相同,值一定相同,(ID不是地址,只是在栈区对应的地址ID号)
-- 1111111111111111111111111111111111111111
7.pycharm安装于创建项目:解释器的环境搭建,不依赖系统环境变量,需要自己的python解释器的环境变量。
今日学习内容
'''
一.变量(标识符)的命名规范 *****
二.常量
三.格式化输入输出
四.注释
五.基本的数据类型:int long float bool str list dict *****
六.运算符:算术运算符 | 关系运算符 | 逻辑运算符 | 成员运算 *****
'''
一、变量的命名规范
'''
1.只能由 字母 数字 及 _ 组成
2.不能以数字开头
'''
'''
3.避免与系统关键字重名:重名不一定会报错,但系统的功能就被自定义的功能屏蔽掉了(严重不建议这样来做)
注:以下关键字变为变量名直接回出现错误
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
'''
'''
4.以_开头的变量都有特殊含义
5.以__开头与结尾的叫魔法变量:内置变量
6.建议使用_连接语法来声明长变量名:owen_name old_boy_edu
7.支持小驼峰与大驼峰命名规范:owenName | OwenName
8.多个单词的简写建议使用全大写:URL | HTTP | HTML
9.用全大写来标识常量:PI = 3.141592653 | OWEN_SALARY = 88888
'''
二、常量
'''
python中没有严格的常量语法:
-- 常量:在程序运行过程中,值不能被改变的量
-- python中所有的量在运行过程中其实都能发生改变,只能自我保障不去改变全大写定义的变量值
'''
三、1.输出:自带换行
'''
py2
print(10)
print 10 : py3被遗弃
'''
'''
py3
print(10)
'''
三、2.输入
'''
py2
info = input('提示信息:')
# 细节
# 1.可以输入一个值,但一定要按照值得表示方式进行输入,10就是数字 'abc'就是字符串
# 2.如果输入的是abc,默认将abc作为变量来解读,如果变量abc未定义就报错
raw_input(): 采用所有输入都以字符串进行存储
py3
info = input('提示信息:')
# 细节
# 1.所有信息都是直接输入,都会被转换为字符串存储 == raw_input
''' 四、注释
'''
注释:不会被python解释器解释执行,是提供给开发者阅读代码的提示
单行注释: # 开头的语句
多行注释:出现在文件最上方,用''''''包裹的语句
pycharm快捷键:ctrl + /
'''
五、数据类型 *****
1.整型
# py2下:数据过长用long类型存储 | 数据量小的整型用int存储
# py3下:long被遗弃 | 所有整型都用int存储(优化:数据量过大,采用字符串存储处理,如果需要运算,可以直接拿来运算)
2.浮点型
# float: 用来存放小数
salary = 88888.0123456789
# 可以通过格式化方式来确定输出格式
# %.6f % salary
# 1)%f对浮点型数据进行占位,默认到小数点后6位
# 2).后的数据数字表示小数精度
# 3).前的数据是输出数据的总长度(包含整数、小数和点),若点前的数据小于等于要输出的数据的总长度,该点前的数据不起作用,若点前的数据超出就采用规定的最大长度
# 注:%015.6f:右对齐,左侧不足拿0填充, %-15.6f: 左对齐输出,不足拿空格填充
print('%015.6f' % salary)
# 了了解
# 可以将格式化的结果进行保存,以便之后再次使用
info = '%015.6f' % salary
print(info)
3.布尔类型
# bool类型:就是两个值 True | False
result = False
print(result)
4.字符串类型
# 单行字符串: "" | ''
# 多行字符串: """""" | ''''''
# 案例:
name = input('name: ')
age = input('age: ')
# %s是万能占位符, %是用来连接有占位符的字符串与需要占位的变量,多个变量用()包裹
info = """信息:
name: %s
age: %s""" % (name, age)
print(info)
5.列表
# 1、定义:变量名 = [多个值,之间用,隔开]
ls = [3, 1, 2]
# 2、列表变量名ls访问的是列表整体
print(ls) # [3, 1, 2]
# 3、通过索引(index)来访问具体的值,index从0开始编号: ls[index]
print(ls[0]) # 3
# 4、ls的嵌套及值的访问
ls = [[1, 2, 3], [4, 5, 6], [7, 8, [9]]]
# 访问数字9
print(ls[2][2][0])
# 重点:list存放值的方式: eg:[3, 1, 2] => 列表的0号位存放的不是数字3,而是堆区3空间的地址
6.字典
'''
# 列表能存放多个值,但多个值只能通过index区分,但是index没有语义
# 需找即可以存放多个值,切每个值有一个语义描述 => dict类型
# 定义:{}是用来定义字典的语法,key是用来描述最终要访问的value值的,key对于开发者来说是已知的
# 访问:通过 dic[key]来访问key描述的值,[key]的格式完全同字典里的key的格式。
dic = {'key': 'value'}
'''
people = {
'name': 'Liuxx',
'age': 68,
'gender': '哇塞'
}
# 整体访问
print(people)
# 访问年龄的值,[将key原样拿下来] => ['age']
print(people['age'])
# 案例
# 字典的嵌套
info = {
'name': 'egon',
'hobbies': ['play', 'sleep'],
'company_info': {
'name': 'Oldboy',
'type': 'education',
'emp_num': 40,
}
}
# 拿到40 | 拿到 'sleep'
res = info['company_info']['emp_num']
print(res)
res = info['hobbies'][1]
print(res)
students=[
{'name':'alex','age':38,'hobbies':['play','sleep']},
{'name':'egon','age':18,'hobbies':['read','sleep']},
{'name':'wupeiqi','age':58,'hobbies':['music','read','sleep']},
]
# 第二个学生的第一个爱好
print(students[1]['hobbies'][0])
六、运算符 *****
1.算术运算符
# + | - | * | / | // | ** | %
# 1.字符串和list可以做 + 和 *
# 2./非整除,// 为整除
# 3.**求幂:5 ** 2 => 25
# 4.任意数 % n => [0, n-1]
# 5.有负数参与的取余:符号跟着 % 后面那个数
2.比较运算符
# > | < | == | != | >= | <=
# 1.运算结果为bool类型
print(3 > 5)
# 2.可以连比
num = 10
print(1 < num < 20)
3.赋值运算符
# += | -= | *= | /= | %= | **= | //= | =
num = 10
num += 1 # num = num + 1 => 11
# 1.链式赋值
a = b = num
# 2.交叉赋值
x = 10
y = 20
x, y = y, x
# 3.解压赋值
ls = [3, 1, 2]
a, b, c = ls
# _是合法的变量名,会接受值,但我们认为_代表该解压位不用接收,用_来接收表示
_, _, g = ls # g才存放2,其他标示不接受,多个不需要的值可以用*_
4.逻辑运算符
# and | or | not
# 1.and: 左右都成立才成立,有不成立的就不成立
# 2.or: 左右都不成立才不成立,有成立的就成立
# 3.ont: 成立则不成立,不成立则成立
res = 0 and 20 # and前为假,整个式子就可以确定为假了,and后就不需要执行(短路)
print(res) # 0
res = 10 or 20 # or前为真,整个式子就可以确定为真了,or后就不需要执行(短路)
print(res) # 10
python学习Day3 变量、格式化输出、注释、基本数据类型、运算符的更多相关文章
- python学习笔记 | strftime()格式化输出时间
time模块 import time t = time.strftime("%Y-%m-%d %H:%M:%S") print(t) datetime模块 import datet ...
- python学习日记(格式化输出,初始编码,运算符)
格式化输出 顾名思义,按照个人意愿定制想输出的格式. name = input('请输入姓名:') age = int(input('请输入年龄:')) job = input('请输入工作:') h ...
- Python学习5——基本格式化输出
整数的格式化输出 十进制.八进制.十六进制 num01 = 100 print("十进制输出:%d"%num01) print("八进制输出:%o"%num01 ...
- Python学习笔记:格式化输出
%d digit%s string%f float程序运用:name = input("please input your name:")age = int(input(" ...
- Python小代码_2_格式化输出
Python小代码_2_格式化输出 name = input("name:") age = input("age:") job = input("jo ...
- Python的三种格式化输出
今天刚学了python的三种格式化输出,以前没接触过这么有趣的输出方式,现在来分享一下. #!/user/bin/env python#coding:utf-8#三种格式化输出 #第一种格式化输出na ...
- Python学习笔记:第2天while循环 运算符 格式化输出 编码
目录 1. while循环 continue.break和else语句 2. 格式化输出 3. 运算符 3.1 算数运算 3.2 比较运算符 3.3 赋值运算符 3.4 逻辑运算符 3.5 成员运算符 ...
- Python学习笔记:输入输出,注释,运算符,变量,数字类型,序列,条件和循环控制,函数,迭代器与生成器,异常处理
输入输出 输入函数input()和raw_input() 在Python3.x中只有input()作为输入函数,会将输入内容自动转换str类型: 在Python2.x中有input()和raw_inp ...
- python之while循环/格式化输出/运算符/初始编码/成员变量
一.主要内容:1.while 循环 (难点)while 条件: 循环体 break: 直接跳出循环continue:停止当前本次循环,继续执行下一次循环.不会中断循环能让循环退出:(1)break ( ...
随机推荐
- 使用Jackson解析首字母大写的json字符串
Jackson在解析返回的json字符串时始终报错,纠结很久之后才找到原因,原来是是由于json字符串中的字母都是首字母大写,导致jackson找不到相应的KEY. 在项目中经常使用从服务器获取的数据 ...
- 关于anguar2微信支付问题
前端一直都是用angular2做的 但是在做支付时,很头痛 ,支付总是失败,但后没有办法只能是跳转到一个其它的页面进行支付,这也算实现了,但是觉得不好,支付完了以要重新跳回系统,怎么解决??????? ...
- spring jpa Pageable 分页之---多条件排序
Sort sort = new Sort(Direction.ASC, "sort").and(new Sort(Direction.DESC, groupField));//排序 ...
- Nginx安装详细指南
nginx安装环境 nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境. gcc 安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有g ...
- solr实现动态加载分词
版本是5.3.0 在core(自己创建的模块)的schema.xml里面增加类型: <fieldType name="text_lj" class="solr.Te ...
- 使用fpm 软件包打包
安装 sudo gem install --no-ri --no-rdoc fpm 简单使用 一个 redis的简单demo % ls src/redis-server redis.conf src/ ...
- 使用tcpdump测试反向代理和lvs的nat区别
关于反向代理,一个请求过来,实际反向代理服务器要和两个对象做3次握手 客户端到反向代理服务器,是一个3次握手 反向代理服务器请求后端web服务器,是一个3次握手 lvs的nat和反向代理不同. lvs ...
- day 12
一,什么是装饰器? 装饰器本质上就是一个python函数,他可以让其他函数在不需要做任何代码变动的前提下,增加额外的功能,装饰器的返回值也是一个函数对象. 装饰器的应用场景:比如插入日志,性能测试,事 ...
- Hanlp分词1.7版本在Spark中分布式使用记录
新发布1.7.0版本的hanlp自然语言处理工具包差不多已经有半年时间了,最近也是一直在整理这个新版本hanlp分词工具的相关内容.不过按照当前的整理进度,还需要一段时间再给大家详细分享整理的内容.昨 ...
- [转]使用Cython来保护Python代码库
转自:http://blog.csdn.net/chenyulancn/article/details/77168621 最近,我在做一个需要使用Cython来保护整个代码库的Python项目. 起初 ...