Python入门笔记_01

☆ 在 Python 交互式环境中 编写并执行代码:
 
- 在「cmd」中 输入 Python ,如果看见 >>> 就可以输入Python 代码了,「回车」执行代码。
 
- 如果没有看见 >>> 可能有两种原因:
    1、没有安装 Python 环境。那么请自行上 Python 官网(www.python.org)下载。
    2、这是因为 Windows 会根据一个「Path」的「环境变量」设定的路径去查找 Python.exe(即 Python环境)。如果没找到,就会报错。如果在安装 Python环境 时漏掉了勾选「 Add Python 3.X to PATH 」,那就要手动把 Python. exe 所在的路径添加到「Path」中。 如果你不知道怎么修改环境变量, 建议把 Python环境 安装程序重新运行一遍,务必记得勾上「 Add Python 3.X to PATH 」。
 
 
一、变量 与 字符串
 
1.1、Python 的 变量
 
- Python 创建变量,如:var = 123
 
 ☆ 注意:
    Python 对大小写敏感,例如 变量 a 与 变量 A 不是同一个变量;
    Python 语句结尾不需要分号 即“;”;
    一定要保持 Python 的可读性。
 
# 例子,创建一个变量 var 并赋值 123 ,然后输出变量 var :
var = 123
print(var)
 
# 例子,打开指定路径中的文件,为该文件添加内容,然后读取该文件的内容,并打印:
file = open('E:/PY_Test/file.txt','a+')
file.write('Hello World! + ')
content = file.read()
file.close()
print(content);
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
★ open() 函数中的不同模式:
  r  只能读;
  r+ 可读可写,不会创建不存在的文件,从顶部开始写,会覆盖之前此位置的内容;
  w  只能写,覆盖整个文件,不存在则创建;
  w+ 可读可写,如果文件存在,则覆盖整个文件不存在则创建;
  a  只能写,从文件底部添加内容,不存在则创建;
  a+ 可读可写,从文件顶部读取内容,从文件底部添加内容,不存在则创建。
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
 
1.2、Python 的 字符串
 
- 任何在 双引号、单引号 或 三个引号 之间的文字例如:"abcdefg" 'hijklmnop' '''feiojgioejgoiegjeoijg'''。
 
 ☆ 注意:三个引号(''')被用于过长的文字或者说明,只要三引号不完你就可以随意换行写下去。
 
 
- Python 的 字符串合并:
 
 ★ Python 的 字符串合并 与 Javascript 一样,用+号。
 
# 例子:
st01 = 'abc'
st02 = 'defg'
stR = st01 + st02
print(stR)# 输出:abcdefg
 
 ☆ 注意:在 Pyhton 中不同的数据类型是不能够进行合并的,但是通过一些方法可以得到转换。
    如果你不知道变量是什么类型,可以通过 type() 函数 来查看类型,例如:print(type(word))
    Pyhton 的强制类型转换:
# 例子:
num = 1
st = '1'
print(num + int(st))# 输出:2
print(str(num) + st)# 输出:11
 
 
- Python 的 字符串复制:
 
 ★ 在 Python 中不但能通过‘加法’(即 + 号) 把字符串进行合并,还可以通过‘乘法’(即 * 号) 把字符串复制。
 
# 例子:
st = 'Good!' * 3
print(st)# 输出:Good!Good!Good!
 
 ☆ 注意:由于中文注释会导致报错,所以需要在文件开头加一行魔法注释 #coding:utf-8,也可以在设置里面找到“File Encodings”设置为UTF-8。
 
 
- Pyhton 字符串 的 分片 与 索引:
 
 ★ 在 Python 中 字符串 可以通过 string[x] 的方式进行索引、分片,也就是加一个 [] 。字符串的分片(slice)实际上可以看作是从字符串中找出来你要截取的 东西,复制出来一小段你要的长度,储存在另一个地方,而不会对字符串这个源文件改动。 分片获得的每个字符串可以看作是原字符串的一个副本。
(与 C 有相似之处)
 
# 例子:
name = 'My Name is Jay'
print(name[0])# 输出:M
print(name[-3])# 输出:J
print(name[8:12])# 输出:is J
print(name[8:13])# 输出:is Ja
print(name[5:])# 输出:me is Jay
print(name[:5])# 输出:My Na
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
★ 'My Name is Jay'中 每个字符 在该 字符串 中的索引位置如下表:
 
┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐
│ M  │ y  │      │ N  │ a  │ m │  e  │     │  i   │ s  │      │ J  │  a  │ y  │
├──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┤
│  0  │ 1  │ 2  │  3  │ 4  │ 5  │  6  │ 7  │  8  │ 9  │ 10 │11 │ 12 │13 │
├──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┤
│-14 │-13│-12│-11│-10 │ -9 │ -8 │ -7 │ -6 │  -5 │ -4 │ -3 │ -2 │ -1 │
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘
 
  name[0] 表示 取编号为 0 的字符,即:M
 
  name[-3] 表示 取编号为 -3 即 倒数第 3 个 字符,即:J
 
  name[8:12] 表示 截取的编号从第 8 个字符开始,到位置为第 12 个 但不包含第 12 个字符结束,即:is J
 
  name[5:] 这样的写法代表着从编号为 5 的字符到结束的字符串分片,即:me is Jay
 
  name[:5] 则代表着从编号为 0 的字符开始到编号为 5 但不包含第 5 个字符的字符分片,即:My Na
 
  可能容易搞混,可以想象成 [5:] 是从 5 到最后面,程序员懒得数有多少个字符了所以就省略地写。[:5] 是从最前面到 5,同样是懒得写 0,所以就写成了这样。
 
如下图:
PY_notes_01 - Uncle Jay - Uncle Jays blog
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
 
# 再来一个例子:
word = 'friends'
find_the_evil_in_your_friends = word[0] + word[2:4] + word[-3:-1]
print(find_the_evil_in_your_friends)#  输出:fiend
 
 
- Python 的 字符串方法:
 
    Python 是 面向对象 进行编程的语言,而 对象 拥有各种 功能、特性,专业术语称之为————方法(Method)。
    为了方便理解,我们假定日常生活中的车是“对象”,即 car 。然后众所周知,汽车有着很多特性和功能,其中“开”就是汽车的一个重要功能,于是汽车这个对象使用“开”这个功能,我们在 Python 编程中就可以表述成这样: car.drive()
    如下图:
PY_notes_01 - Uncle Jay - Uncle Jays blog
( Python 中 调用方法 与 Javascript 类似) 
 
 
# 例子,把电话号码中第4位到第9位的数字用* 进行遮掩:
phoneNum = '13123456789'
new_phoneNum = phoneNum.replace(phoneNum[3:9],'*'*6)
print(new_phoneNum)# 输出:131******89
 
 ☆ 注意:甚至可以像下面这样,直接通过'字符串'调用方法:
print('aaabbbccc'.replace('bbb','-'*3))# 输出:aaa---ccc
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
★ Pyhton 字符串的 replace() 方法:
   上例中 replace() 方法 的括号中,第一个参数 phone_ number[3:9] 代表要被替换掉的部分,后面的参数 '*' * 6 表示将要替换成什么字符,也就是把 * 乘以 6,显示 6 个 * 。
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
 
# 例子,模拟手机中的号码联想功能:
search = '168'
num01 = '16800300612'
num02 = '13501680299'
num03 = '16700700168'
print(search + ' 在 ' + num01 + ' 中的 第' + str(num01.find(search)+1) + '位 到 第' + str(num01.find(search)+len(search)) + '位')
print(search + ' 在 ' + num02 + ' 中的 第' + str(num02.find(search)+1) + '位 到 第' + str(num02.find(search)+len(search)) + '位')
print(search + ' 在 ' + num03 + ' 中的 第' + str(num03.find(search)+1) + '位 到 第' + str(num03.find(search)+len(search)) + '位')
# 输出:
# 168 在 16800300612 中的 第1位 到 第3位
# 168 在 13501680299 中的 第5位 到 第7位
# 168 在 16700700168 中的 第9位 到 第11位
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
★ Pyhton 字符串的 find() 方法:在 本字符串 中寻找 指定字符串 所在的位置。
★ Pyhton 的 len() 方法:计算对象的长度,并以 整型数据 返回。
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
 
# 例子:
print('{} a word she can get what she {} for.'. format('With','came'))
print('{preposition} a word she can get what she {verb} for'. format( preposition = 'With', verb = 'came'))
print('{0} a word she can get what she {1} for.'. format('With','came'))
# 输出:
# With a word she can get what she came for.
# With a word she can get what she came for
# With a word she can get what she came for.
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
★ Pyhton 字符串的 format() 方法:把 本字符串中 的 {} 或 {编号} 又或者 {字符串},替换成 format() 方法的参数中指定的字符串。
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
# 字符串方法 format() 的使用方式,如下:
print('{} {}'.format('hello','world')) # 不设置指定位置,按默认顺序。
print('{0} {1}'.format('hello','world')) # 设置指定位置。
print('{1} {0} {1}'.format('hello','world')) # 设置指定位置。
print('{a} {b} {a}'.format(a = 'hello',b = 'world')) # 设置指定位置。
# 输出:
# hello world
# hello world
# world hello world
# hello world hello
 
# 例子,利用 字符串方法 format() 填充网址中空缺的城市数据:
city = input(" write down the name of city:")
url = "http://apistore.baidu.com/microservice/weather?citypinyin={}".format(city)
print(url)
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
★ Pyhton 的 input() 方法:用于接收控制台的输入,在 Python3 中 input() 将所有输入作为字符串看待,返回字符串类型。input('参数')的参数会作为提示信息被显示。
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
# input() 方法 的使用如下:
name = input('请输入您的名字:')
print('Your Name is ' + name)
# 输出:
# 请输入您的名字:输入你的名字
# Your Name is 你输入的名字

 

posted @ 2017-11-12 18:20  Uncle_Jay  阅读(467)  评论(0编辑  收藏  举报