python之路,Python基础篇2(第二周)

一、.pyc是个什么鬼:

pyc文件其实是PyCodeObject的一种持久化保存方式。

二、数据类型

1、数字:

2 是一个整数的例子。

长整数 不过是大一些的整数。

3.23和52.3E-4是浮点数的例子。E标记表示10的幂。在这里,52.3E-4表示52.3 * 10-4。

(-5+4j)和(2.3-4.6j)是复数的例子,其中-5,4为实数,j为虚数,数学中表示复数是什么?

int(整型)

  在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647

  在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807

long(长整型)

  跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。

  注意,自从Python2.2起,如果整数发生溢出,Python会自动将整数数据转换为长整数,所以如今在长整数数据后面不加字母L也不会导致严重后果了。

float(浮点型)

  浮点数用来处理实数,即带有小数的数字。类似于C语言中的double类型,占8个字节(64位),其中52位表示底,11位表示指数,剩下的一位表示符号。

complex(复数)

  复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。

注:Python中存在小数字池:-5 ~ 257

#复数,生产环境用得比较少。

python 2.7 有整型和长整型之分:

>>> (2) -1

1

>>> (2**31) -1

2147483647L

>>>

>>> type( (2**30) -1)

<type ‘int‘>

>>> type( (2**31) -1)

<type ‘long‘>

>>>

python 3.x 没有整型和长整型之分:

>>> type( (2**30) -1)

<class ‘int‘>

>>> type( (2**31) -1)

<class ‘int‘>

>>>

2、布尔值

真或假

1 或 0

>>> 1 is True

False

>>> 0 is False

False

>>> 0 is True

False

3、字符串

"hello world"

万恶的字符串拼接:

python中的字符串在C语言中体现为是一个字符数组,每次创建字符串时候需要在内存中开辟一块连续的空,并且一旦需要修改字符串的话,就需要再次开辟空间,万恶的+号每出现一次就会在内从中重新开辟一块空间。

>>> name = ‘luchuan‘

>>> print("my name is " + name + " and you ? ")

my name is luchuan and you ?

>>>

#这等于三块内存空间

字符串格式化输出

name = "luchuan"

print "i am %s " % name

#输出: i am luchuan

PS: 字符串是 %s;整数 %d;浮点数%f

字符串常用功能:

移除空白

分割

长度

索引

切片

1)strip 移除空白

username = input("user:")

if username.strip() == ‘alex‘:

print("welcome")

2)split 分割

name = "alex,jack,rain"

name2 = name.split(",")

print(name2)

3)join 字符串合起来

name = "alex,jack,rain"

name2 = name.split(",")

print("|".join(name2))

4)‘’ in name 判断有没有空格

name="alex li"

print(‘‘ in name)

5)capitalize 首字母大写

name="alex li"

print(name.capitalize())

6)format 格式化

msg = "Hello, {name}, it‘s been a long {age} since last time sopke..."

msg2 = msg.format(name=‘xiaoming‘,age=33)

print(msg2)

msg2 = "haha{0}, dddd{1}"

print(msg2.format(‘Alex‘,33))

7)center 居中

name="alex li"

print(name.center(40,‘-‘))

8)find 查找

name = ‘alex3sdf‘

print(name.find(‘a‘))

9)isdigit是否是数字

age = input("your age:")

if age.isdigit():

age = int(age)

print(age)

else:

print("invalid data type")

10)isalnum 是否只包含字母数字字符

name = ‘alex3sdf‘

print(name.isalnum())

11)endswith 什么时候结尾

name = ‘alex3sdf‘

print(name.endswith(‘df‘))

12)startswith 什么时候开始

name = ‘alex3sdf‘

print(name.startswith(‘df‘))

13)upper 大写

name = ‘alex3sdf‘

print(name.upper())

14)lower 小写

name = ‘alex3sdf‘

print(name.upper().lower())

15)len 长度

print(len(name))

4、列表

列表只有在Python中叫列表,在其他语言中叫数组。

创建列表:

name_list = [‘alex‘, ‘seven‘, ‘eric‘]

name_list = list([‘alex‘, ‘seven‘, ‘eric‘])

基本操作:

索引

切片

追加

删除

长度

循环

包含

name = [‘Alex‘, ‘jack‘, ‘Rain‘, ‘Eric‘, ‘Monica‘, ‘Fiona‘]

>>> name[:]

[‘Alex‘, ‘jack‘, ‘Rain‘, ‘Eric‘, ‘Monica‘, ‘Fiona‘]

索引

>>> name[2]

‘Rain‘

切片

>>> name[2:4]

[‘Rain‘, ‘Eric‘]

>>> name[2:4][0]

‘Rain‘

>>> name[2:4][0][1:2]

‘a‘

修改:

>>> name[1]="xiaoming"

>>> name

[‘Alex‘, ‘xiaoming‘, ‘Rain‘, ‘Eric‘, ‘Monica‘, ‘Fiona‘]

插入:

>>> name.insert(2,‘daming‘)

>>> name

[‘Alex‘, ‘xiaoming‘, ‘daming‘, ‘Rain‘, ‘Eric‘, ‘Monica‘, ‘Fiona‘]

追加:

>>> name.append(‘alex‘)

>>> name

[‘Alex‘, ‘xiaoming‘, ‘daming‘, ‘Rain‘, ‘Eric‘, ‘Monica‘, ‘Fiona‘, ‘alex‘]

删除:

>>> name.remove("daming")

>>> name

[‘Alex‘, ‘xiaoming‘, ‘Rain‘, ‘Eric‘, ‘Monica‘, ‘Fiona‘, ‘alex‘]

练习:

往中间插入两个临组成员的名字

取出第3-8的人列表

删除第9个人

把刚才加入的那2个其他组的人一次性删除

把组长的名字加上组长备注

要求你隔一个人打印一个人

>>> name = [‘Alex‘, ‘xiaoming‘, ‘Rain‘, ‘Eric‘, ‘Monica‘, ‘Fiona‘]

>>> name.insert(-1,"xiaochuan")

>>> name.insert(5,"dachuan")

>>> name[3:8]

[‘Eric‘, ‘Monica‘, ‘dachuan‘, ‘xiaochuan‘, ‘Fiona‘]

>>> name.remove("Fiona")

>>> name

[‘Alex‘, ‘xiaoming‘, ‘Rain‘, ‘Eric‘, ‘Monica‘, ‘dachuan‘, ‘Fiona‘]

>>> del name[4:6]

>>> print(name[::2])

长度:

>>> len(name)

7

>>> name

[‘Alex‘, ‘xiaoming‘, ‘Rain‘, ‘Eric‘, ‘Monica‘, ‘Fiona‘, ‘alex‘]

5、元组(不可变列表)

创建元组:

ages = (11, 22, 33, 44, 55)

ages = tuple((11, 22, 33, 44, 55))

6、字典(无序)

创建字典:

person = {"name": "mr.wu", ‘age‘: 18}

person = dict({"name": "mr.wu", ‘age‘: 18})

常用操作:

索引

新增

删除

键、值、键值对

循环

长度

三、数据运算

计算机中能表示的最小单位,是一个二进制位。

计算机中能存储的最小单位,是一个二进制位(bit)。

8bit = byte(字节)

1024byte = 1kbyte

1024kbyte = 1mbyte

1024mb = 1gb

1024gb = 1T

算数运算:

比较运算:

赋值运算:

逻辑运算:

成员运算:

身份运算:

位运算:

时间: 2024-08-05 11:11:03

python之路,Python基础篇2(第二周)的相关文章

Python学习笔记——基础篇【第二周】未完待续

python介绍 cpython print("alex xx")  c解释器 .pyc(字节码)  机器码 cpu jphthon print("alex xx") java解释器 Java字节码 机器码 cpu irongpython print("alex xx") C#解释器 C#字节码 机器码 cpu ruby js... pypy print("alex xx") 解释器 字节码  机器码 cpu 最快 代码执行的

Python之路【第九篇】:Python基础(26)——socket server

socketserver Python之路[第九篇]:Python基础(25)socket模块是单进程的,只能接受一个客户端的连接和请求,只有当该客户端断开的之后才能再接受来自其他客户端的连接和请求.当然我 们也可以通过python的多线程等模块自己写一个可以同时接收多个客户端连接和请求的socket.但是这完全没有必要,因为python标准库已经为 我们内置了一个多线程的socket模块socketserver,我们直接调用就可以了,完全没有必要重复造轮子. 我们只需简单改造一下之前的sock

Python之路【第九篇】:Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy

Python之路[第九篇]:Python操作 RabbitMQ.Redis.Memcache.SQLAlchemy Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached基于一个存储键/值对的hashmap.其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信. Memc

Python面试重点(基础篇)

Python面试重点(基础篇) 第一部分 必答题 简述列举了解的编程语言及语言间的区别? pythonjavacc++c#gophp----------------------------------------------------------------编程语言分为解释型和编译型: 解释型语言:   python 在编写代码的时候不需要编译,在执行的时候,想要用专用的解释器对代码进行编译,全部编译后,才能执行代码 编译型语言:   c c++   go 每写一行代码,解释器就会编译一行,然

智普教育Python视频教程之入门基础篇,python笔记

智普教育Python视频教程之入门基础篇,python笔记 print id()内存地址 type()变量类型 windows命令行下edit命令 python数据类型不需要指定类型 定义hostname="www.google.com" 结果运行后总是告诉我NameError: name 'socket' is not defined 哪位帮我分析一下,怎么改才对 没用过socket,不过你试着在第一行加入 import socket C:\>notepad somefile.

【新手学Python】一、基础篇

由于以前处理数据用Matlab和C,最近要处理大量文本文件,用C写实在是太繁琐,鉴于Python的强大文本处理能力,以及其在Deep Learning上有着很大优势,本人打算从即日起学习Python,谨以此系列博客记录学习点滴.文中如有错误,还望大牛们指出! Section 1: 本文是第一篇,当然也是基础,有了编程基础的我们都知道,学习一门语言什么最重要?当然先搞清楚数据类型和数据结构,有了这些,你才能去谈面向对象,才能去设计程序. Python的数据类型比较简单:1.整数;2.长整数;3.浮

Python之路Python内置函数、zip()、max()、min()

Python之路Python内置函数.zip().max().min() 一.python内置函数 abs() 求绝对值 例子 print(abs(-2)) all() 把序列中每一个元素做布尔运算,如果全部都是true,就返回true, 但是如果是空字符串.空列表也返回true 例子 print(all([1,2,'1',''])) 输出结果 False 例子2 print(all('')) 输出结果 True any() 把序列中每一个元素做布尔运算,如果有一个为true就返回true, 但

Python之路Python作用域、匿名函数、函数式编程、map函数、filter函数、reduce函数

Python之路Python作用域.匿名函数.函数式编程.map函数.filter函数.reduce函数 一.作用域 return 可以返回任意值例子 def test1(): print("test1") def test(): print("test") return test1 res = test() print(res) 输出结果 test <function test1 at 0x021F5C90> 分析:这里print(res)输出的是te

sql系列(基础篇)-第二章 约束和排序数据

更好的看↑代码点击VIEW PLAN 第二章 约束和排序数据 1. 在 emp 表中选择工资介于 1500 到 2500 的员工的信息: 注意:使用 between 下边界 and 上边界时,条件包括边界值: [email protected]>l 1 select * from emp 2* where sal between 1500 and 2500 [email protected]>/ EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ----

python学习之路(基础篇)——python入门

一.python是一门编程语言,作为学习python的开始,需要事先搞明白:编程的目的是什么?什么是编程语言?什么是编程? 编程的目的:将人的思想转换成机器能理解的语言,利用机器的优势扩大个人的能力,实现更广阔的目标. 编程语言   : 能够被计算机所理解的语言即为编程语言.编程语言是程序员与计算机沟通的介质. 编程          :编程是程序员将自己思想流程按照编程规则写下来,产出的结果就是包含一堆字符的文件. 二.程序语言分类 机器语言:直接用二进制编程,直接操作硬件 汇编语言:简写的英