补充

  *)/ 表示的除法即使是整数,结果也是浮点数

  *)python表示的整数是没有大小限制的。而某些语言根据其储存长度是有大小限制的。例如Java对32位整数的范围限制在-2147483648-2147483647

    python表示的浮点数也没有大小限制,但是超出一定的范围就会表示为inf(无限大)

  

运算符

python运算符 **

  a**b(b个a连乘)

python 逻辑运算符 按位逻辑运算"$"   "|"     "^"   ">>"   "<<"

  参考链接:https://blog.csdn.net/wxy_csdn_world/article/details/80759915

  $是 按位 逻辑与 运算

  比如:5 & 6,5和6转换为二进制是101和110,此时101 & 110=100,100转换为十进制是4,所以5 & 6=4

  | 是 按位 逻辑或 运算

  比如5|6,就是101|110,得到111=7,所以最后结果为7

  ^ 是按位 逻辑异或 运算(异或会将都是1或者都是0的结果改变,并不是不变的)

  比如5^6,其实是101^110,结果是011,所以5^6的答案是3

  

  >> 是左移一位,>>2 是左移两位的意思(转化位二进制,然后相应的添两个0)

>>> print ('1 << 2:', 1 << 2)
1 << 2: 4 (1变为100)相当于1*2*2)
>>> print ('4 << 2:', 4 << 2)
4 << 2: 16
>>> print ('5 << 2:', 5 << 2)
5 << 2: 20

  <<是右移一位 >>2是右移两位的意思

>>> print ('5 >> 2:', 5>>2)
5 >> 2: 1#没有特别的计算方法吧
>>>

 

python字符前缀

  参考链接:https://blog.csdn.net/weixin_42165585/article/details/80980739

  1.无前缀和u前缀

  即以Unicode编码储存,可以存储中文,字符默认创建就是这种

  Unicode编码通常使用两个字节存储一个字符

u'a' 即    u'\u0061'   实际内存中为  [0000 0000] [0110 0001]

  2.b前缀

  字符串储存为Ascll码,无法存储中文

>>> test_str=b'测试'
File "<stdin>", line 1
SyntaxError: bytes can only contain ASCII literal characters.
>>>

  每个字符由一个字节(8位)表示

b'a' 即 b'\x61'  实际内存中为 [0110 0001]

  3.r前缀

  r前缀与前面的两种不是一样的东西,它主要是解决特殊字符和转义字符的问题,其中的所有字符均视为普通字符和三引号差不多

>>> print('a\ta')
a a
>>> print('''a\ta''')#三引号是什么,反正不是这个
a a
>>> print(r'a\ta')
a\ta

  注意:#b前缀的结果是原样输出的,前面的b代表该字符串是一个字节数组

>>> print(b'a\ta')
b'a\ta'
>>> print(u'a\ta')
a a
>>>

  

python \r与\b的应用、光标的含义

参考链接:https://www.jianshu.com/p/eb5c23cd6e34

\r 能将光标定位到当前行的行首

\b则是将光标回退一位

光标的含义:

光标后面的输出内容均会消失,光标回退后,后面位置的内容都会被抹除

print('按下回车开始计时,按下 Ctrl + C 停止计时。')
print('第2行\r',end='mark')#这一行会消失,因为“第2行”输出后,\r会将光标回退到行首,然后输出end指定的内容即为“mark”
#注意上面没有换行符了,默认的end是\n
print('第3行“第三行”不会消失')
print('第3行\r“第3行”会消失')#因为输出了第三行后,光标回退到行首,即后面的内容“第3行”被抹除了
print('第3行\b“行”会消失')#“\b"回退1位
print('第4行\r')#这个为什么没有被抹除呢,看下面这一行
print('第4行\ra')#结合输出结果来看,这个光标移到行首,后面的内容并不是立即被抹除的,而是输出一位,抹除一位
print('第5行\r')#所以这一行输出了”第5行“后,光标被移到行首了,然后输出了默认的end值”\n",但是这样的话结果中的第5行前不是应该有个空行吗? #输出
lient' '--host' 'localhost' '--port' '5819' 'c:\Users\Administrator.SC-201605202132\Envs\sort\app\forTest.py'
按下回车开始计时,按下 Ctrl + C 停止计时。
mark第3行“第三行”不会消失
“第3行”会消失
第3“行”会消失
第4行
a 4行
第5行

  

*)写一个输出进度的

import time

def test():
for i in range(100):
time.sleep(0.1)
print('当前正运行第%d/%d次测试\r'%(i,100),end='')#必须要有这个end,要不没有用
print('append content')#而且这一行也不能有,其实也没必要有,因为如果后面一定有序列输出的,还不如分多次在附加内容输出后立即输出次数序列
if __name__=="__main__":
test()

数据类型和变量

  静态语言和动态语言

  静态语言在定义变量的时候就必须要指定变量的类型,如果赋值的时候和变量的类型不匹配就会报错例如java就是静态语言

int a = 123; // a是整数类型变量
a = "ABC"; // 错误:不能把字符串赋给整型变量

  相应的变量本身类型不固定的语言称为动态语言,Python就是动态语言

  python支持多种数据类型,在计算机内部,可以把所有的变量看作为一个对象,而变量在程序中就是用于指向这些对象的,对变量的赋值就是把变量和对象关联起来

  对变量赋值x = y是把变量x指向真正的对象,该对象是变量y所指向的。随后对变量y的赋值不影响变量x的指向。

  

  理解变量在内存中的表示:

a='ABC'

  python的解释器做了两件事

  1. 在内存中创建了一个'ABC'的字符串;

  2. 在内存中创建了一个名为a的变量,并把它指向'ABC'

  也可以把一个变量a赋值给另一个变量b,这个操作实际上是把变量b指向变量a所指向的数据

  

  常量

  所谓常量就是不能变的变量,比如常用的数学常数π就是一个常量。在Python中,通常用全部大写的变量名表示常量:

  但事实上PI仍然是一个变量,Python根本没有任何机制保证PI不会被改变,所以,用全部大写的变量名表示常量只是一个习惯上的用法,如果你一定要改变变量PI的值,也没人能拦住你。

  

python 字符前缀,运算符、换行符、数据类型和变量的更多相关文章

  1. python处理文件的换行符

    我们知道在Windows平台下的换行符是\r\n,而在linux下的换行符是\n.现在写一个简单程序来测试python是如何处理这些换行符的. 准备文件data.txt,该文件在Windows平台下编 ...

  2. php方法综述除去换行符(PHP_EOL使用变量)

    一个小包裹,事实上,不同的平台具有不同的实现.为什么要这样.它可以是一个世界是多样的. 最初unix与世界把它包/n取代,但windows为了体现自己的不同.要使用/r/n,更有意思的是,mac随着/ ...

  3. 【Python】使用制表符换行符来添加空白

    在编程中,在打印时,有时候需要显示出来的数据看着舒服一点,那么使用制表符(\t).换行符(\n)即可轻松实现 >>> print('zhangsan')zhangsan 加入制表符后 ...

  4. python tips:文件读取——换行符的问题

    问题:在windows系统中,换行的符号是'\r\n'.python在读文件的时候为了系统兼容,会默认把'\r','n','\r\n'都视作换行.但是在windows文件中,可能在同一行中同时存在'\ ...

  5. C#(去、过滤)掉字符中的换行符

    本文介绍的方法需要先导入命名空间:usingSystem.Text.RegularExpressions; 字符串里所有的的换行符都去掉:textStr = Regex.Replace(textStr ...

  6. 转!! Eclipse设定和修改文件字符编码格式和换行符

    Window -> Preferences -> General -> Workspace : Text file encoding :Default : 选择此项将设定文件为系统默 ...

  7. Python开发的入门教程(一)-数据类型、变量

    介绍 Python第一门课程,是Python开发的入门教程,将介绍Python语言的特点和适用范围,Python基本的数据类型,条件判断和循环,函数,以及Python特有的切片和列表生成式. Pyth ...

  8. Python之路----------基础 一(数据类型、变量、基本语法、流程控制)

    一. 数据类型与变量 1.数据类型 整数   #Python在程序中的表示方法和数学上的写法一模一样,-1,0,1都是整数. 浮点数  1 #浮点数就是小数. 字符串 1 #在Python中字符串是以 ...

  9. python使用制表符或者换行符来添加空白--3

    #!/usr/bin/python #coding=utf-8 message="python" print(message) print("\tpython" ...

随机推荐

  1. Java性能 -- Lock优化

    Lock / synchronized Lock锁的基本操作是通过乐观锁实现的,由于Lock锁也会在阻塞时被挂起,依然属于悲观锁   synchronized Lock 实现方式 JVM层实现 Jav ...

  2. DQL---连接查询(内连接、外连接)、子查询、分页查询

    一.连接查询 1.连接查询建立在有相互关系的两个表间,进行两个及两个以上的表或视图的查询. 2.对n张表进行查询,至少需要n-1个连接表的条件. 二.笛卡尔积(容易造成数据库宕机) 1.指表中每行元素 ...

  3. xml解析-jaxp修改结点

    jaxp修改结点 / 修改第一个p1下面的sex内容是nan * 1.创建解析器工厂 * 2.根据解析器工厂创建解析器 * 3.解析xml返回document * 4.得到sex item方法 * 5 ...

  4. Discuz! X3 数据表、数据字段说明

    pre_common_admincp_cmenu 后台菜单收藏表 字段名 数据类型 默认值 允许非空 自动递增 备注 id smallint(6) unsigned    NO 是   title v ...

  5. MySQL事务和锁——《MySQL DBA工作笔记》

    MySQL事务 事务存在的原因 事务存在的目的:保证用户对数据操作对数据是安全的.(比如说银行卡余额) 事务的特性--ACID 原子性:一个事务要么全部执行,要么不执行 一致性:事务开始和结束时,数据 ...

  6. Python—下载安装与使用

    安装依赖包 首先安装gcc编译器,编译时需要使用gcc.gcc有些系统版本已经默认安装,通过  gcc --version  查看,没安装的先安装 [root@localhost ~]# yum -y ...

  7. c# WF 第2节 窗体的添加与删除

    本节内容: 1: 窗体的添加 2: 窗体的删除 1: 窗体的添加 2: 窗体的删除 3:窗口的运行,发现只有一个form1 是因为

  8. Python进阶-XVV hashlib模块、configparse模块、logging模块

    1.配置相关的configparse模块 配置文件如何组织?python中常见的是将配置文件写成py,然后引入该模块即可.优点是方便访问. 但是也有用类似windows中的ini文件的配置文件,了解即 ...

  9. C#获取CPU和内存使用率

    获取内存使用率 方式1: using System; using System.Runtime.InteropServices; namespace ConsoleApp1 { public clas ...

  10. Reat学习笔记4

    相信很多初学react的朋友在研究组件的路由配置问题时都很困扰,我也是折腾了半天才搞明白的. 一般情况下路由配置包含path和component两个信息: component顾名思义是组件的意思,指的 ...