Python编码与变量
Python执行的方式
Window:
- 在CMD里面,使用 Python + 相对路径/绝对路径
- 在解释器里面,直接输入,一行代码一行代码的解释
Linux:
明确地指出用Python解释器来执行该文件,Python + 相对路径/绝对路径
.如果想要像执行shell一样执行Python,那么就需要在文件头部指定解释器
#!/usr/bin/env python
print("Hello, World!")
如此一来,执行文件名即可.
PS:需要给文件加上执行权限
内容编码
python解释器执行.py文件时,会对内容进行编码,在Python 2.X中默认为ASCII,而Python 3.X中默认的编码为UTF-8.
ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646.ASCII码仅仅支持英文和其他一些符号,并不能支持中文等其他语言.
Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。Unicode中所有的字符都是4个字节.
UFT-8UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,又称万国码,UTF-8用1到6个字节编码Unicode字符。用在网页上可以统一页面显示中文简体繁体及其它语言(如英文,日文,韩文)。其中英文字母为1个字节,西欧等拉丁字母为2个字节,中文等中亚文字为3个字节,其他特殊字符为4个字节.
GBK全称《汉字内码扩展规范》(GBK即“国标”、“扩展”汉语拼音的第一个字母,英文名称:Chinese Internal Code Specification),该为中国出台的一个编码标准,中文字符为2个字节.且国家规定凡是出口到中国的电子计算机都要有GBK编码.
那么在Python2中我们必须要在开头指定编码
#!usr/bin/env python
#-*- coding: utf-8 -*-
print("我爱你")
(三) 注释
对一行注释,在注释的内容前面加上“#”
对多行注释,把要注释的内容写成""" 内容 """这样
执行脚本传入参数
Python有大量的模块,类库包括以下三种:
- Python内部提供的大量工具包
- 业内公布开源的模块
- 程序员自己开发的模块
那么加载模块需要先把需要加载的模块文件放到该.py文件同级的目录下,然后使用如下方式
import sys
pyc文件
执行Python代码时,如果导入了其他的 .py 文件,那么,执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译之后产生的字节码
ps:代码经过编译可以产生字节码;字节码通过反编译也可以得到代码
变量
变量既是我们储存在计算机里面的数据,每一个变量都会被赋予一个变量名,直接指向数据的内存地址.Python语言中所有的数据,都是围绕着对象这个概念来构建的,即每一种数据类型其实都是一种对象.
age = 18
name = "Hermaous"
li = [12, 13, 'Y']
dic = {'name': 'Hermaous', 'age': 18}
tup = (12, 14, 11, 'love')
Python提供的数据类型,有如下几种:
- 字符串(str)
- 数值(整数:int, 浮点数:float, 长整数:long, 复数:complex)
- 列表(list)
- 字典(dict)
- 元组(tuple)
而每一个对象都有如下的特征:
- 都有一个身份,即id——使用id()函数可以得到该id
- 都隶属于一个类型——使用type()函数可以得到该对象的类型
- 每一个都一定映射一个数值
可变对象和不可变对象
实例比创建之后,身份和类型是不可变的,但是如果值是不可以被修改的,则是不可变对象,反之如果值是可以被修改的,那么则是可变对象.
容器对象
某个对象包含对其他对象的引用,则称为容器或集合,如列表、字典和元组.
对象的属性和方法
属性就是对象的值,方法就是调用时将在对象本身上执行某些操作的函数,使用".+方法"的形式可以访问对象的属性和方法,如
name = 'yuan'
name.upper()
li = [1, 2, 3]
li.append(4)
变量的复制操作
- 与c语言的区别在于变量赋值操作无返回值
- 链式赋值:y=x=a=1
- 多元赋值:x,y=1,2 x,y=y,x
- 增量赋值:x+=1
变量定义的规则
只能由下划线、字母和数字构成
不能是数值开头
不能使用python内置的一些变量名
['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']
变量的输入
将输入的值赋予给name
name = input("请输入您的名字:")
输入密码时,如果想要其不可见,需要利用getpass模板中的getpasss方法,即
import getpass
pwd = getpass.getpass("请输入密码")
(七)流程控制
流程控制由if···elif···else构成
number = 18
if number < 18:
print('You are too young!')
elif number > 18:
print("You are too old!")
else:
print("You are so good!")
while循环体
组成形式
#while + 条件:
# 执行的代码
# 如果条件为True,则执行下面的代码;如果条件为False,则不执行下面的代码
break
break用于退出所有循环
while True:
print("You are so handsome!")
break #当代码运行到这里时,将会跳出整个while循环,那么此时后面的代码将不会被执行
print("You are so good!")
continue
continue用于退出当前循环,继续下一次循环
count = 0
while count < 10:
if count == 6:
continue #当代码运行到这里时,将不会运行下面的代码,即不会打印6,而是直接跳过执行下一个循环
print(count)
count += 1
Python编码与变量的更多相关文章
- Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助
Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助 目录 Pychar ...
- Python:Day03 变量、字符编码
配置环境变量 右键计算机--->属性--->高级系统设置--->高级--->环境变量--->系统变量--->找到Path,双击编辑--->将程序的路径粘贴上去 ...
- Python学习笔记一:第一个Python程序,变量,字符编码与二进制,用户交互程序
第一个python程序 Windows:设置环境变量,X:\pthonxxx,xxx是版本号 在命令提示符下 输入python,进入解释器 >>>print(“Hello World ...
- Python编程-编码、变量、数据类型
一.Python和其他语言对比 C语言最接近机器语言,因此运行效率是最高的,但需要编译. JAVA更适合企业应用. PHP适合WEB页面应用. PYTHON语言更加简洁,丰富的类库,使初学者更易实现应 ...
- Python学习--03变量类型
变量赋值 Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程. 每个变量在内存中创建,都包括变量的标识,名称和数据这些信息. 每个变量在使用前都必须赋值,变量赋值以后该变量才会被创 ...
- (转载) 浅谈python编码处理
最近业务中需要用 Python 写一些脚本.尽管脚本的交互只是命令行 + 日志输出,但是为了让界面友好些,我还是决定用中文输出日志信息. 很快,我就遇到了异常: UnicodeEncodeError: ...
- python编码规范
python编码规范 文件及目录规范 文件保存为 utf-8 格式. 程序首行必须为编码声明:# -*- coding:utf-8 -*- 文件名全部小写. 代码风格 空格 设置用空格符替换TAB符. ...
- 【转】python编码规范
http://blog.csdn.net/willhuo/article/details/49300441 决定开始Python之路了,利用业余时间,争取更深入学习Python.编程语言不是艺术,而是 ...
- python 编码 UnicodeDecodeError
将一个py脚本从Centos转到win运行,出错如下: UnicodeDecodeError: 'gbk' codec can't decode byte 0xff in position 0: il ...
随机推荐
- hive笔记:时间格式的统一
一.string类型,年月日部分包含的时间统一格式: 原数据格式(时间字段为string类型) 取数时间和格式的语法 2018-11-01 00:12:49.0 substr(regexp_repl ...
- [C#]关于路径的几则笔记
测试环境 本文基于windows下的操作 windows 7 x64 unity 5.3.7p4 获取文件的路径 比如一个文件的路径为:e:\3d\client\trunk\Product\Apps\ ...
- java 一个实例
this 代替
- Java中使用elasticsearch搜索引擎实现简单查询、修改等操作-已在项目中实际应用
以下的操作环境为:jdk:1.8:elasticsearch:5.2.0 maven架包下载坐标为: <dependency> <groupId>org.elasticsear ...
- 如何学习sss和前端数据处理
1.学习scss,就看这篇:http://www.ruanyifeng.com/blog/2012/06/sass.html 就够了,因为sass的出现本来就是为了简化工作提高效率,也不算什么深奥精妙 ...
- 微软刚发布的区块链去中心化身份识别系统DID
https://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=2653549389&idx=1&sn=158f9feb10d76a ...
- C# Lambda 表达式学习之(三):动态构建类似于 c => c.Age == null || c.Age > 18 的表达式
可能你还感兴趣: 1. C# Lambda 表达式学习之(一):得到一个类的字段(Field)或属性(Property)名,强类型得到 2. C# Lambda 表达式学习之(二):LambdaExp ...
- Scala主构造器参数是否升级为成员与是否有get/set
1:主构造器前面添加val/var 关键字则升级为类成员,否则只是构造器中的一个参数而已. 2:private 修饰get/set方法权限,private var/val 成员变量,则有get/set ...
- linux之dos2unix命令
今天在使用脚本升级的时候碰到一个问题,然后写了一个简单的自测脚本进行测试,如上图,理论上应该输出 /usr/local/mysql/bin/mysqldump -h 127.0.0.1 -uroot ...
- 淡旺季机票的价格问题(switch语句与if-else语句嵌套)
项目背景 淡旺季机票的价格,原价机票价格为5000元, 淡季头等舱打5折,经济舱打4折 旺季头等舱打9折,经济舱打8折 要求 编写程序实现: 输入任意的月份与舱位来计算机票的价格 1代表头等舱,2代表 ...