python-我所忽略的技术细节

acc = raw_input("Enter the numebr:")
type(acc)  raw_input 是字符串标准输入,如果要与数字做算术运算是要将其类型进行转换。

元组和列表可以看成是普通的‘数组’,元组不可更改,列表可以。

为了输出清晰美观,带逗号的print语句输出的元素之间会自动添加一个空格。

print "hello,world"
hello world

对于条件判断,‘还有什么是真’

acc = [x**2 for x in range(8) if not x%2] 等同于 aca = [x**2 for x in range(8) if not x%2==1]

还等同于 cac = [x**2 for x in range(8) if x%2 == 0]

这个就类似与C语言中条件判断,例如:

while (hello != 0)  等同于 while(hello)  后者默认的就等于1.要谨记,关系表达式为真,那么也就是说它的值等于1.不然就是0.

filename = raw_input("Enter the file:")

fp = open("filename","r")

for eachline in fp:

print eachline,   #这里加逗号是为了抑制print语句输出的自动换行。因为这里不需要自动换行了,不然会多产生一个空行。

fp.close()

python允许同一行书写多个语句,用;隔开,但python 并不提倡这么做。

每一个python 脚本文件都可以看成是个模块。

模块以磁盘文件的形式存在。

当一个模块变得过大,并且驱动了太多功能的话,就应该考虑拆一些代码出来另外建一个模块。
下划线对解释器有特殊含义,而且是许多内建标示符所使用的符号.

文档,obj.__doc__进行访问,获得动态文档字符串,obj可以是函数名,模块,类

def foo(x):
    "hello world"
    return x + 1
foo.__doc__
hello world

如果模块是被导入,那么__name__ 值就是 模块名

如果模块是直接执行,那么 __name__ 的值就是 __main__

所有的python对象都拥有三个属性,类型,值,身份。

每一个对象都有唯一的一个身份来标识自己,可以用内建函数id()来查看,可以理解成它的内存地址。

空对象或值为零的任何数字或NULL对象值,他们的布尔值都是False.

python 中不仅有值的比较,还有对象的比较。例如:

a = 4.3
b = 3 + 1.3
a is not b
True  #虽然他们的值是相同的,但引用的是两个不同的对象。或者说:
id(a) == id(b)
False  #实际的内存地址是不同的。但如果是这样:
m = 5
n = 5
m is n
True
y = m
id(m) == id(y)
True

每个python 对象天生都有一个计数器,用来计算这个对象被引用的次数,就像是在一个装着内容的盒子上贴有的标签,当引用减为零时,这个对象自然就消失。

以上是比较身份的运算符:is , is not

def a(num):
    if isinstance(num,(flaot,int,long,complex)):
        print "%s is the type:" %(num),type(num).__name__
    else:
        print "not at all "

type(0),type(5),type(-100)都属于同一个对象。

如果对象是不同的,那我们就知道原来的变量一定是不同的类型,因为每一个类型只有一个类型对象。所以可以直接来进行对象身份的比较。

序列类型是指从0开始的索引。字符串,元组,列表都属于序列类型。

映射类型是通过唯一的key来访问,它无序存放。

其实在python 中,一切都是指针。

时间: 2024-10-12 04:35:46

python-我所忽略的技术细节的相关文章

Python开发容易忽略的问题

这篇文章主要介绍了Python程序员代码编写时应该避免的17个"坑",也可以说成Python程序员代码编写时应该避免的17个问题,需要的朋友可以参考下 一.不要使用可变对象作为函数默认值 复制代码代码如下: In [1]: def append_to_list(value, def_list=[]): ...:         def_list.append(value) ...:         return def_list ...: In [2]: my_list = appen

android容易忽略的技术细节

1:在onPause()中进行数据持久化.activity的生命周期为onCreate()---->onRestart()----->onStart()------>onResume()------>onPause()-------->onStop()------>onDestroy(),其中onCreate().onRestart().onStart().onResume()执行结束后不能立即结束进程,所以onPause()是结束进程前最后一个一定会被调用的方法.因为

Python - Git仓库忽略提交规则 & .gitignore配置

Git 忽略文件提交的方法 有三种方法可以实现忽略Git中不想提交的文件. 在Git项目中定义 .gitignore 文件 这种方式通过在项目的某个文件夹下定义  .gitignore 文件,在该文件中定义相应的忽略规则,来管理当前文件夹下的文件的Git提交行为. .gitignore 文件是可以提交到公有仓库中,这就为该项目下的所有开发者都共享一套定义好的忽略规则. 在  .gitingore  文件中,遵循相应的语法,在每一行指定一个忽略规则.如: *.log *.temp /vendor2

Python开发easy忽略的问题

这篇文章主要介绍了Python程序猿代码编写时应该避免的17个"坑",也能够说成Python程序猿代码编写时应该避免的17个问题,须要的朋友能够參考下 一.不要使用可变对象作为函数默认值 复制代码代码例如以下: In [1]: def append_to_list(value, def_list=[]): ...:         def_list.append(value) ...:         return def_list ...: In [2]: my_list = app

微信收费事件背后被广泛忽略的技术细节

作为一个横跨通信与互联网两大行业的从业者,前四年的核心网经验和后五年的互联网经验让我不得不感慨一个非常遗憾的现实:通信与互联网两大行业本来可以有珠联璧合的技术协同,为移动互联网提供近乎零耗电零流量的PUSH机制,但由于两个行业之间长期以来的价值观隔阂和互防心态,导致如今的手机PUSH技术不仅为用户增加了显著的电量消耗,还对移动运营商的基础设施造成了完全不必要的信令压力.微信与运营商的纷争正是这种冲突集中爆发的结果. 看到不少来自两个行业的专业分析,通信行业的专家谴责微信过于频繁的心跳和短包导致"

盘点Python中易忽略的函数

Python 内置函数 1.ord() 函数是 chr() 函数(对于8位的ASCII字符串)或 unichr() 函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值,如果所给的 Unicode 字符超出了你的 Python 定义范围,则会引发一个 TypeError 的异常 2.zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表. 如果各个迭代器的

C# 类型基础——你可能忽略的技术细节

引言 本文之初的目的是讲述设计模式中的 Prototype(原型)模式,但是如果想较清楚地弄明白这个模式,需要了解对象克隆(Object Clone),Clone 其实也就是对象复制.复制又分为了浅度复制(Shallow Copy)和 深度复制(Deep Copy),浅度复制 和 深度复制又是以 如何复制引用类型成员来划分的.由此又引出了 引用类型 和 值类型,以及相关的对象判等.装箱.拆箱等基础知识. 于是我干脆新起一篇,从最基础的类型开始自底向上写起了.我仅仅想将对于这个主题的理解表述出来,

走进Python世界(四)基本语法

Python标识符 Python标识符是用来标识一个变量,函数,类,模块或其他对象的名称.一个标识符开始以字母A到Z或a?z或后跟零个或多个字母下划线(_),下划线和数字(0?9). Python中标识符内不允许标点符号,如@,$和%. Python是一种区分大小写的编程语言.因此,Manpower 和manpower在Python中是两个不同的标识符. 这里有Python标识符命名约定: 类名以大写字母以及所有其它标识符以小写字母. 开头单个前导下划线的标识符表示由该标识符约定意思是私有的.

[Python 3系列]基础入门

Python是一种脚本编程语言.相比C语言而言,python的代码简单易懂,而且代码条数很少.因为执行速度相对C语言慢很多,所以python适合做脚本工具.学完python,我们可以从事自动化运维.web开发.大数据爬虫等类型的工作. 安装 python分为2.X版本和3.X版本,3.X版本不兼容2.X版本,学习时,尽量学习最新的3.X.python可以被安装在windows.linux和mac os平台上. 安装在windows平台上时,可以从官网(https://www.python.org