热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python为什么虚部是j不是i_python拾遗(一)

1、在Python中没有字符类型char,只有字符串类型str,即字符也是用str类型表示。2、python标识符可以使用下划线字母数字组成但是数字不允

1、在 Python 中没有字符类型 char,只有字符串类型 str,即字符也是用 str 类型表示。

2、python标识符可以使用下划线 字母 数字组成但是数字不允许作为标识符的开头出现,这也是普遍编程语言的通用规则。

3、python语x=(y=z+1)中右半部分括起来后,相当于把一个赋值表达式赋值给变量想,因此出现语法错误。正确的赋值语法应把括号去掉,即:x=y=z+1。这种赋值方式可称为连续赋值、批量赋值、多元赋值、多变量赋值 等。

4、python中三元运算符的使用。基本语法为:a  if  condition else b  该语句当 condition 为真时等于 a,为假时等于 b。

例如:min = x  if  x>y  else  = y

在C 和java中格式为:  min = x > y  ?  x : y

5、字母与数字的ASCII 码大小范围是 "a-z" > "A-Z" > "0-9"

6、字典中键必须是唯一的,键值需要为不可变类型 。例:dict4 = {(1,2,3): “uestc”}

7、range()函数的语法如下:range (start, end, step )

参数说明:

start: 计数从 start 开始。默认是从 0 开始。例如 range(5) 等价于 range(0, 5);

end: 计数到 end 结束,但不包括 end。例如:range(0, 5) 等于 [0, 1, 2, 3, 4],没有5;

step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

8、python中,字符串编译的过程:gbk==>unicode==>utf16==>url解码

字符串解码顺序为:url解码==>utf16==>unicode==>gbk

9、解释性语言和编译性语言的定义: 计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。

翻译的方式有两种,一个是编译,一个是解释。两种方式只是翻译的时间不同。

解释性语言的定义:

解释性语言的程序不需要编译,在运行程序的时候才翻译,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就需要逐行翻译一次,效率比较低。现代解释性语言通常把源程序编译成中间代码,然后用解释器把中间代码一条条翻译成目标机器代码,一条条执行。(需要解释器,非独立性)

编译性语言的定义:

编译性语言写的程序在被执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高。(不需要解释器,具有独立性)

10、和数学运算不同的地方是,Python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数

例如:2.5+10/4  #>>>4.5             2.5+10.0/4  #>>>5

11、在Python中,布尔类型还可以与其他数据类型做 and、or和not运算,请看下面的代码:

a = True

print a and 'a=T' or 'a=F'

计算结果不是布尔类型,而是字符串 'a=T',这是为什么呢?

因为Python把0、空字符串''和None看成false,其他数值和非空字符串都看成True,所以:

True and 'a=T' 计算结果是 'a=T'

继续计算 'a=T' or 'a=F' 计算结果还是 'a=T'

要解释上述结果,又涉及到 and 和 or 运算的一条重要法则:短路计算。

在计算a and b时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。

在计算a or b时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。

所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。 12、元组

包含 0 个元素的 tuple,也就是空tuple,直接用 ()表示:

>>> t = ()

>>> print t

()

创建包含1个元素的 tuple 呢?来试试:

>>> t = (1)

>>> print t

1

好像哪里不对!t 不是 tuple ,而是整数1。为什么呢?

因为()既可以表示tuple,又可以作为括号表示运算时的优先级,结果 (1) 被Python解释器计算出结果 1,导致我们得到的不是tuple,而是整数 1。

正是因为用()定义单元素的tuple有歧义,所以 Python 规定,单元素 tuple 要多加一个逗号“,”,这样就避免了歧义:

>>> t = (1,)

>>> print t

(1,)

Python在打印单元素tuple时,也自动添加了一个“,”,为了更明确地告诉你这是一个tuple。多元素 tuple 加不加这个额外的“,”效果是一样的:

>>> t = (1, 2, 3,)

>>> print t

(1, 2, 3)

13、python列表字母操作

capitalize() 首字母大写,其余全部小写

upper() 全转换成大写

lower() 全转换成小写

title() 标题首字大写,如"i love python".title() "I love python" 14、

如果字符串里面有很多字符都需要转义,就需要加很多\,为了简化,Python还允许用r' '表示‘ ’内部的字符串默认不转义。

>>> print('\\\t\\')

\ \

>>> print(r'\\\t\\')

\\\t\\

15、下列对象的布尔值都是False:

NONE;

False(布尔类型)

所有的值为零的数

0(整型)

0.0(浮点型)

0L(长整型)

0.0+0.0j(复数)

""(空字符串)(" "空格的布尔值为True)

[](空列表)

()(空元组)

{}(空字典)

16、python中复数不能比较大小,python2中表达式:a>b>c 相当于 a>b and b>c.

tuple 类型的比较是元素多的大于元素少的,若元素个数相等,则从第一个元素开始依次向后比较,直到两个元素不相等才结束。(字符串貌似永远比数字大,文档没找到说明,试出来的)

17、apppend()表示在列表末尾插入一个新的对象元素 可以使用extend() 表示在列表末尾追加另一个列表中的多个对象元素

# append()用法

>>>a = [1, 2, 3, 4, 5]

>>>a.append([6, 7, 8])

>>>len(a)

6

>>>a

[1, 2, 3, 4, 5, [6, 7, 8]]

#extend()用法

>>>a.extend([6, 7, 8])

>>>len(a)

8

>>>a

[1, 2, 3, 4, 5, 6, 7, 8]18、Python 中复数的表示方法:real + image j

复数的实部与虚部均为浮点数;虚部的后缀可以是 “j” 或者 “J”;复数的 conjugate 方法可以返回该复数的共轭复数。

19、cmp(x,y)

如果 x y 返回 1。

Python 3 已废弃 。使用 使用 (x>y)-(x替换。

20、python标识符

在 Python 里,标识符由字母、数字、下划线组成。

在 Python 中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。

Python 中的标识符是区分大小写的。

以下划线开头的标识符是有特殊意义的。以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入;

以双下划线开头的 __foo 代表类的私有成员;以双下划线开头和结尾的 __foo__ 代表 Python 里特殊方法专用的标识,如 __init__() 代表类的构造函数。

Python 可以同一行显示多条语句,方法是用分号 ; 分开



推荐阅读
  • 掌握Mosek矩阵运算,轻松应对优化挑战
    本篇文章继续深入探讨Mosek学习笔记系列,特别是矩阵运算部分,这对于优化问题的解决至关重要。通过本文,您将了解到如何高效地使用Mosek进行矩阵初始化、线性代数运算及约束域的设定。 ... [详细]
  • java文本编辑器,java文本编辑器设计思路
    java文本编辑器,java文本编辑器设计思路 ... [详细]
  • 本文详细介绍了C语言中的基本数据类型,包括整型、浮点型、字符型及其各自的子类型,并探讨了这些类型在不同编译环境下的表现。 ... [详细]
  • 本文档汇总了Python编程的基础与高级面试题目,涵盖语言特性、数据结构、算法以及Web开发等多个方面,旨在帮助开发者全面掌握Python核心知识。 ... [详细]
  • 本文详细解析了Java中throw和throws的关键区别,同时涵盖了JDK的定义、Java虚拟机的关键约定、Java的跨平台性、自动垃圾回收机制、源文件结构、包的概念及作用等多个核心知识点,旨在帮助学生更好地准备Java期末考试。 ... [详细]
  • 华为智慧屏:超越屏幕尺寸的智能进化
    继全球发布后,华为智慧屏于9月26日在上海正式亮相,推出65英寸和75英寸版本。该产品不仅在屏幕尺寸上有所突破,更在性能和智能化方面实现了显著提升。 ... [详细]
  • 本文深入探讨了面向切面编程(AOP)的概念及其在Spring框架中的应用。通过详细解释AOP的核心术语和实现机制,帮助读者理解如何利用AOP提高代码的可维护性和开发效率。 ... [详细]
  • 本文介绍如何从字符串中移除大写、小写、特殊、数字和非数字字符,并提供了多种编程语言的实现示例。 ... [详细]
  • 深入解析Java虚拟机(JVM)架构与原理
    本文旨在为读者提供对Java虚拟机(JVM)的全面理解,涵盖其主要组成部分、工作原理及其在不同平台上的实现。通过详细探讨JVM的结构和内部机制,帮助开发者更好地掌握Java编程的核心技术。 ... [详细]
  • 本文探讨了如何利用HTML5和JavaScript在浏览器中进行本地文件的读取和写入操作,并介绍了获取本地文件路径的方法。HTML5提供了一系列API,使得这些操作变得更加简便和安全。 ... [详细]
  • 深入浅出TensorFlow数据读写机制
    本文详细介绍TensorFlow中的数据读写操作,包括TFRecord文件的创建与读取,以及数据集(dataset)的相关概念和使用方法。 ... [详细]
  • Go语言开发中的常见陷阱与解决方案
    本文探讨了在使用Go语言开发过程中遇到的一些典型问题,包括Map遍历的不确定性、切片操作的潜在风险以及并发处理时的常见错误。通过具体案例分析,提供有效的解决策略。 ... [详细]
  • 大数据基础:JavaSE_day06 ... [详细]
  • 本文介绍了一种根据目标检测结果,从原始XML文件中提取并分析特定类别的方法。通过解析XML文件,筛选出特定类别的图像和标注信息,并保存到新的文件夹中,以便进一步分析和处理。 ... [详细]
  • 1、字符型常量字符型常量指单个字符,是用一对单引号及其所括起来的字符表示。例如:‘A’、‘a’、‘0’、’$‘等都是字符型常量。C语言的字符使用的就是 ... [详细]
author-avatar
大果粒和小果粒
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有