Python 学习基础知识概要

举报
崔庆才丨静觅 发表于 2021/05/21 23:38:26 2021/05/21
【摘要】 1. 输入输出 输出实例 12 print 'hello','world'hello world 输入实例 12345 name = raw_input();print "hello,",nameworldhello,world 输入时提示实例 12345 name = raw_input('please enter yo...

1. 输入输出

输出实例

1
2
print 'hello','world'
hello world

输入实例

1
2
3
4
5
name = raw_input();
print "hello,",name

world
hello,world

输入时提示实例

1
2
3
4
5
name = raw_input('please enter your name:');
print "hello,",name

please enter your name:world
hello,world

raw_input 函数读入的是字符串,如果想要转换成 int 类型,就要用到 int 函数。

1
birth = int(raw_input('birth: '))

2. 字符表示

十进制正常表示,十六进制最前面加 0x,小数正常表示,科学计数法表示 1.23x109 就是 1.23e9,或者 12.3e8 转义符 \ 转义符实例:

1
2
3
>>> print '\\\n\\'
\
\

防止转义,可以在前面加入 r

1
2
3
4
>>> print '\\\t\\'
\ \
>>> print r'\\\t\\'
\\\t\\

多行内容表示,用三引号包括

1
2
3
4
5
6
>>> print '''line1
... line2
... line3'''
line1
line2
line3

布尔值的表示 True 和 False

1
2
>>> 3 > 2
True

空值 None,相当于 Java,C 中的 null

1
2
>>>print None==None
True

Unicode 表示的字符串用 u’…’ 表示,转化成 UTF-8 编码

1
2
3
4
>>> u'ABC'.encode('utf-8')
'ABC'
>>> u'中文'.encode('utf-8')
'\xe4\xb8\xad\xe6\x96\x87'>

文本文件编码

1
2
#!/usr/bin/env python
# -*- coding: utf-8 -*-

3. 格式化

格式化输出实例

1
2
3
4
>>> 'Hello, %s' % 'world'
'Hello, world'
>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)
'Hi, Michael, you have $1000000.'

格式化整数和小数

1
2
3
4
>>> '%2d-%02d' % (3, 1)
' 3-01'
>>> '%.2f' % 3.1415926
'3.14'

万能格式化 % s,可以代替所有格式化 对于 Unicode 字符串,用法完全一样,但最好确保替换的字符串也是 Unicode 字符串:

1
2
>>> u'Hi, %s' % u'Michael'
u'Hi, Michael'

输出百分号 %,用双 % 即可

1
2
>>> 'growth rate: %d %%' % 7
'growth rate: 7 %'

4. 列表 list

列表 list ,可变的有序表

1
2
3
>>> classmates = ['Michael', 'Bob', 'Tracy']
>>> classmates
['Michael', 'Bob', 'Tracy']

len 函数获取它的长度

1
2
>>> len(classmates)
3

取得某个元素,可以用中括号索引

1
2
3
4
5
6
7
8
>>> classmates[0]
'Michael'
>>> classmates[1]
'Bob'
>>> classmates[2]
'Tracy'
>>> classmates[3]
Traceback (most recent call last):

倒数索引

1
2
3
4
5
6
7
8
>>> classmates[-1]
'Tracy'
>>> classmates[-2]
'Bob'
>>> classmates[-3]
'Michael'
>>> classmates[-4]
Traceback (most recent call last):

append 追加元素到末尾

1
2
3
>>> classmates.append('Adam')
>>> classmates
['Michael', 'Bob', 'Tracy', 'Adam']

insert 插入到指定位置

1
2
3
>>>> classmates.insert(1, 'Jack')
>>> classmates
['Michael', 'Jack', 'Bob', 'Tracy', 'Adam']

pop 删除末尾元素

1
2
3
4
>>> classmates.pop()
'Adam'
>>> classmates
['Michael', 'Jack', 'Bob', 'Tracy']

pop 加入参数删除指定元素

1
2
3
4
>>> classmates.pop(1)
'Jack'
>>> classmates
['Michael', 'Bob', 'Tracy']

元素改变,直接赋值即可

1
2
3
>>> classmates[1] = 'Sarah'
>>> classmates
['Michael', 'Sarah', 'Tracy']

list 可以嵌套,可用二维索引

1
2
3
>>> s = ['python', 'java', ['asp', 'php'], 'scheme']
>>> s[2][1]
php

空列表

1
2
3
>>> L = []
>>> len(L)
0

5. 元组 tuple

不可变有序的数组 定义元组

1
2
3
>>> classmates = ('Michael', 'Bob', 'Tracy')
>>> classmates
('Michael', 'Bob', 'Tracy')

空的元组

1
2
3
>>> classmates = ()
>>> classmates
()

一个元素的元组

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

注意不能用 t = (1) 来定义, 因为它定义的不是 tuple,是 1 这个数,这是因为括号既可以表示 tuple,又可以表示数学公式中的小括号,这就产生了歧义,因此,Python 规定,这种情况下,按小括号进行计算,计算结果自然是 1。 表面上可变的 tuple

1
2
3
4
5
>>> t = ('a', 'b', ['A', 'B'])
>>> t[2][0] = 'X'
>>> t[2][1] = 'Y'
>>> t
('a', 'b', ['X', 'Y'])

表面上看,tuple 的元素确实变了,但其实变的不是 tuple 的元素,而是 list 的元素。tuple 一开始指向的 list 并没有改成别的 list,所以,tuple 所谓的 “不变” 是说,tuple 的每个元素,指向永远不变。即指向 ‘a’,就不能改成指向 ‘b’ ,指向一个 list,就不能改成指向其他对象,但指向的这个 list 本身是可变的!

6. 字典 dict

字典 dict 即键值对组,dict 的 key 必须是不可变对象。

1
2
3
>>> d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
>>> d['Michael']
95

把数据放入 dict 的方法,除了初始化时指定外,还可以通过 key 放入,在这之前,d 必须被声明,否则会报错

1
2
>>> d['Adam'] = 67
>>> d['Adam']

判断 key 是否在字典中 1. in 判断

1
2
>>> 'Thomas' in d
False

2. 通过 dict 提供的 get 方法,如果 key 不存在,可以返回 None,或者自己指定的 value

1
2
3
4
>>> print d.get('Thomas')
None
>>> print d.get('Thomas', -1)
-1

要删除一个 key,用 pop (key) 方法,对应的 value 也会从 dict 中删除

1
2
3
4
>>> d.pop('Bob')
75
>>> d
{'Michael': 95, 'Tracy': 85}

7. 集合 set

set 和 dict 类似,也是一组 key 的集合,但不存储 value。由于 key 不能重复,所以,在 set 中,没有重复的 key。 要创建一个 set,需要提供一个 list 作为输入集合:

1
2
3
>>> s = set([1, 2, 3])
>>> s
set([1, 2, 3])

重复元素在 set 中自动被过滤:

1
2
3
>>> s = set([1, 1, 2, 2, 3, 3])
>>> s
set([1, 2, 3])

通过 add (key) 方法可以添加元素到 set 中,可以重复添加,但不会有效果:

1
2
3
4
5
6
>>> s.add(4)
>>> s
set([1, 2, 3, 4])
>>> s.add(4)
>>> s
set([1, 2, 3, 4])

通过 remove (key) 方法可以删除元素:

1
2
3
>>> s.remove(4)
>>> s
set([1, 2, 3])

判断元素是否在 set 中

1
2
>>> 5 in s 
True

set 可以看成数学意义上的无序和无重复元素的集合,因此,两个 set 可以做数学意义上的交集、并集等操作:

1
2
3
4
5
6
>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
>>> s1 & s2
set([2, 3])
>>> s1 | s2
set([1, 2, 3, 4])

文章来源: cuiqingcai.com,作者:崔庆才,版权归原作者所有,如需转载,请联系作者。

原文链接:cuiqingcai.com/792.html

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。