Python的基本操作

1、Python Shell编辑器

(1)进入和退出Python Shell编辑器

C:\Users\DELL>python
Python 2.7.12 (v2.7.12:d33e0cf91556, Jun 27 2016, 15:19:22) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

(2)列出已安装的Python工具包

C:\Users\DELL>pip list
pip (8.1.1)
setuptools (20.10.1)
You are using pip version 8.1.1, however version 18.0 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

2、数值转换

1.二进制用0b表示,用bin()函数将其他进制转换为二进制; 2.八进制用0o表示,用oct()函数将其他进制转换为八进制; 3.十六进制用0x表示,用hex()函数将其他进制转换为十六进制。

C:\Users\DELL>python
Python 2.7.12 (v2.7.12:d33e0cf91556, Jun 27 2016, 15:19:22) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> 0b1111011
123
>>> bin(666)
'0b1010011010'
>>> 0o12345
5349
>>> 0xE
14
>>> oct(123)
'0173'
>>> hex(567)
'0x237'

3、逻辑运算

>>> 12|13
13
>>> 12^13
1

4、数值精度

int型的数值精度为-2147483648~2147483647,即-2**255~2**255-1。 浮点数精度: 1.decimal(获取浮点数的详细精度值) from decimal import * Decimal() 2.round() 四舍五入 参数只填数值,后一个参数,表示显示精度(默认为0,表示整数四舍五入)。

>>> ~213812312
-213812313           按位反转
>>> 2147483648
2147483648L
>>> 2147483647
2147483647
>>> type(2147483647)
<type 'int'>
>>> type(2147483648)
<type 'long'>
>>> 0.0000000001
1e-10     科学计算法          
>>> 1*10**-10
1e-10
>>> 10000000000000000000
10000000000000000000L
>>> 100000000000000000000.0
1e+20
>>> complex(1,2)      复数
(1+2j)
>>> 1+2j
(1+2j)
>>> complex(0,5)
5j
>>> 0.1+0.2==0.3
False
>>> from decimal import *
>>> Decimal(0.1+0.2)
Decimal('0.3000000000000000444089209850062616169452667236328125')
>>> Decimal(0.3)
Decimal('0.299999999999999988897769753748434595763683319091796875')
>>> round(1.234)
1.0
>>> round(1.999)
2.0
>>> round(1.1,3)+round(1.2,3)
2.3
>>> round(1.1,1)+round(1.2,1)
2.3
>>> round(1.2019,3)
1.202

5、字符串操作

(1)单引号、双引号 (2)三引号 Python没有多行注释,使用#进行单行注释,可以使用三引号模拟实现多行注释。 (3)转义符

符号

含义

\r

回车,光标移到行首,下面生成一个空行

\n

换行,光标移到下一行

\a

响铃

\t

制表符(横向)

\v

制表符(纵向)

\b

退格

\000

>>> print '\a'

>>> print 'a\tb'
a       b
>>> print 'a\vb'
ab
>>> print 'abc\bd'
abd
>>> print 'a\000b'
a b

(4)字符串间基本操作

连接符

含义

+

字符串拼接

*

重复输出字符串

[]

索引取出字符

in

子串包含的判断

>>> a=a[0:2]+'d'+a[-1]

(5)常用的字符串操作方法 a. 字符串首字母大写:

string.capitalize()

b. 字符串居中,设定宽度

string.center(20)

c. 返回string设定的范围中str出现的次数,默认begin=0,end=串的长度

string.count(str,begin=0,end=len(string))

d. 查找子串所在的索引,没找到返回-1

string.find(str,begin=0,end=len(string))

e. 查找子串所在的索引,没找到返回异常

string.index(str,begin=0,end=len(string))

f. 检测字符串是否是某个字符或者某个子串结尾

string.endswith(str,begin=0,end=len(string))

g. max(string)、min(string) 返回最大字母或最小(函数) h. 去除两端空格(指定内容obj,obj默认是空格)

string.strip(obj)

i. string中str2替换str1,num指定替换次数(默认str1出现的次数)

string.replace(str1,str2,num)

j. encode和decode Python默认使用Unicode编码,可在字符前加u表示Unicode编码,如果输出不正确,可以在字符前添加空格。

>>> print u'中国'
中国
>>> print u' 中国'
 中国

1.py
#coding:utf-8
print '中国'.decode('utf-8').encode('gbk')
print u'中国'
F:\Python>python 1.py
中国
中国

6、输入输出

(1)输入: input() raw_input():输入的内容,保存的数据类型都是字符串 eval():自动转换数据类型 input即eval(raw_input()) (2)输出: print format

>>> a=raw_input('请输入一个数:')
请输入一个数:123
>>> type(a)
<type 'str'>
>>> b=input('请输入一个数:')
请输入一个数:12345
>>> type(b)
<type 'int'>
>>> b=input('请输入一个数:')
请输入一个数:'abcdef'
>>> type(b)
<type 'str'>
>>> b=input('请输入一个数:')
请输入一个数:1.23456
>>> type(b)
<type 'float'>

格式化输出: #%d 整型 #%f 浮点数 #%s 字符串 #%o 八进制 #%e 科学计算法 a=’%s’%(1) #.2f 小数点保留2位 #3.2f 数长度设定为3,’%3.2f’%(11111.2) #-3.2f 数长度设定为3,左对齐 #-08.2f 数长度设定为3,右对齐

>>> a=u'{0}年{1}月{2}日'.format(2017,3,24)
>>> print a
2017年3月24日
>>> format(100000000000000000,'e')
'1.000000e+17'
>>> format(100000000000000000,'f')
'100000000000000000.000000'
>>> a='%s'%(1)
>>> type(a)
<type 'str'>
>>> a='%d'%(5.486)
>>> a
'5'
>>> type(a)
<type 'str'>
>>> a='%3.2f'%(1111.2)
>>> type(a)
<type 'str'>
>>> a
'1111.20'
>>> '%10.2f'%(1111.2)
'   1111.20'
>>> '%-10.2fabcd'%(1111.2)
'1111.20   abcd'
>>> '%010.2f'%(1111.2)
'0001111.20'
>>> 'a' in 'abcd'
True

7、列表

a. 列尾增加元素,增加一个新元素,obj任意类型

list.append(obj)

b. 追加一个新的列表,seq序列

list.extend(seq)

c. 查询某个元素在列表中出现的次数,obj任意类型

list.count(obj)

d. 从列表中找到某个值第一次出现位置的索引

list.index(obj)

e. 在指定索引位置,增加一个元素

list.insert(index,obj)

f. 移除列尾的元素,可以指定index索引位置,并返回移除的元素,index默认为列尾的索引下标

list.pop(index)   等同于del list[index]

g. 移除指定某个值第一次匹配项

list.remove()

h. 反向列表

list.reverse()

i.排序

list.sort()  

j. 列表中的最大值最小值

max(list)、min(list)

k. 序列转换列表化(unicode字符串无法直接列表化)

list(seq) 

l. 列表元素比较

 cmp(list1,list2) 大于返回1,等于返回0,小于返回-1

8、元组

tuple(list)  列表转换为元组

9、字典

不允许同一个键出现多次,以最后一个值为准 键不可变,所以可以为数字、字符串、元祖,但是不能为列表

a. 清空字典,保留字典的空间

dict.clear()

b. 删除字典,不保留字典空间

del dict

c. 浅复制

dict.copy() 

d. 创建一个新的字典,以序列seq中元素作为字典键,val为所有键的默认值

dict.fromkeys(seq[,val])

e. 返回指定的键的值,如果键不存在,返回default值

dict.get(key,default)

f. 判断某个键是否存在

dict.has_key(key)

g. 返回所有的键名,以列表形式

dict.keys()

h. 以列表形式返回可遍历的(键值)元祖数组

dict.items()

i. 以列表形式返回所有的值

dict.values()

j. get()升华版,假如键不存在,则增加键设置值为default

dict.setdefault(key,default)

k. 字典2追加到字典1中,并且执行更新操作

dict1.update(dict2)

10、集合

a. 将列表转换为集合

set(list)

b. 向集合中增加元素,obj为任意类型

set.add(obj)

c. 从集合中删除元素,obj为要删除的元素

set.remove(obj)

d. 并集、交集、差集

并集:set1 | set2
交集:set1 & set2
差集:set1 - set2

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python小屋

Python多线程编程的一个掉进去不太容易爬出来的坑

感谢山东工商学院计算机学院数字媒体技术专业16级郝佳驷和谭泽浩两位同学在上课讲的代码中发现并及时提出文中描述的问题。

24620
来自专栏崔庆才的专栏

Python 的高级特征你知多少?来对比看看

Python 是一种美丽的语言,它简单易用却非常强大。但你真的会用 Python 的所有功能吗?

14530
来自专栏CDA数据分析师

春节停车难?用Python找空车位

作者通过相机结合深度学习算法,基于 Python 语言建立一个高精度的停车位的通知系统,每当有新停车位时就会发短信提醒我。听起来好像很复杂,真的方便实用吗?但实...

17340
来自专栏AI研习社

Python数据清洗实践

“数据科学家们80%的精力消耗在查找、数据清理、数据组织上,只剩于20%时间用于数据分析等。”——IBM数据分析

25830
来自专栏ATYUN订阅号

用wxPython打造Python图形界面

当你为小部件的位置提供精确的坐标时,使用的技术称为绝对定位。大多数GUI工具包都提供了这种功能,但实际上并不推荐使用这种功能。

57020
来自专栏算法channel

Python 闭包坑点

上篇参考:Python 闭包使用注意点,接下来,介绍使用闭包,经常会犯的一个错误:演示代码如下,

13320
来自专栏Python爬虫与数据挖掘

Python 获取微信好友地区、性别、签名信息并将结果可视化

本篇博客是itchat库系列的第三篇文章,它主要实现的功能是获取微信好友地区、性别、签名信息并将结果可视化

10140
来自专栏机器之心

PyTorch最佳实践,怎样才能写出一手风格优美的代码

虽然这是一个非官方的 PyTorch 指南,但本文总结了一年多使用 PyTorch 框架的经验,尤其是用它开发深度学习相关工作的最优解决方案。请注意,我们分享的...

8230
来自专栏ATYUN订阅号

把这个灭霸关进电脑里!一键随机消灭硬盘的一半文件!

复联 4 已经上映了,不知道小伙伴们都有没有买首映的电影票啊,随着复联的热度增加,各种各样的段子层出不清,我今天就在网上看到这么一个段子:

18840
来自专栏大数据文摘

自然语言处理背后的数据科学

NLP是人与机器之间的沟通,使得机器既可以解释我们的语言,也可以就此作出有效回答。自20世纪50年代以来,这个领域一直存在,你可能听说过Alan Turing开...

10920

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励