Python基础语法学习总结(笔记)(1)

  • C语言与Python基础语法区别
  • 1.注释
  • 2.语句格式
  • 3.数据变量
  • (1)字符串
  • (2)列表
  • (3)元组
  • (4)字典
  • (5)集合


C语言与Python基础语法区别

由于本人大致学习过C语言与JAVA基础语法,所以仅对Python相对C语言基础语法的不同之处作出大致总结(想到多少写多少)。
在过去几天练车之余通过网站Python3教程来学习Python的使用。

1.注释

Python的单行注释为 `# code`
而多行注释为 :
'''被注释的代码1
                              被注释的代码1  
                              被注释的代码1'''
                              
   					       """被注释的代码2
                              被注释的代码2  
                              被注释的代码2"""

容易看出,多行注释实际就是python的未给变量名的多行字符串,如下所示:

a='''     被注释的代码1
     被注释的代码1  
     被注释的代码1'''

b="""    被注释的代码2
     被注释的代码2  
     被注释的代码2"""
print(a,'\n',b)

此代码运行结果为:

Python语言基础课程考核目的及要求 python语言基础总结_Python语言基础课程考核目的及要求

2.语句格式

Python基础语法中最具特色的东西应该就是语句格式了吧,Python使用换行和缩进来表示代码块,不需要使用大括号{}了,似乎大括号专门用来表示字典了,辗转相除的Python代码如下所示:

a=int(input('Please input two numbers:'))
b=int(input(':'))
c=b
while c!=0:
    c=a%b
    a=b
    b=c
print('The final result is:%d'%(a))

同时,Python由于行与缩进具有特别的含义而不像C语言中一条语句在换行时仅视为中间有空格,所以Python加入了‘多行语句’。‘多行语句’通过在行尾加入字符‘\’来实现多行连接,如下代码所示:

a=1+\
  2+\
  3+\
  4+\
  5

同时,Python如果想实现一行显示多条语句可以借助分号‘;’,如下代码所示:

a=3;b=4;print("Displays multiple statements on a single line!")

3.数据变量

首先,与C语言不同的是Python支持多个变量用逗号隔开来赋值,具体操作如下:

a,b,c=1,1.0,'hello'

然后是Python与C语言一个很大的区别:Python没有数组取而代之的是字符串(String)、列表(List)、元组(Tuple)、集合(Set)、字典(Dictionary),接下来将对以上几个类型分别讲解:

(1)字符串

字符串(String)与C语言中的字符数组高度相似但仍有一些区别值得注意:Python中的字符串支持使用下标起点和终点来输出,具体如下所示:

a="Hello Python"
print(a[6:])
print(a[:5])

运行结果如下:

Python语言基础课程考核目的及要求 python语言基础总结_Python_02


此外,Python中的字符串和Java中的字符串一样支持字符串的加法与乘法,演示如下:

a="Hello Python"
b="Hello world"
print(b[:6]+a[6:])
print((b[:6]+a[6:])*3)

运行结果如下图所示:

Python语言基础课程考核目的及要求 python语言基础总结_Python语言基础课程考核目的及要求_03


Python字符串与其他字符串最大的区别恐怕就是三引号字符串了,三引号字符串更像一个字符块。在其中可以换行可以使用制表符,在需要HTML或SQL代码块以字符串形式出现在Python中时,三引号字符串就是最佳的选择,具体演示如下:

errHTML = '''
<HTML><HEAD><TITLE>
Friends CGI Demo</TITLE></HEAD>
<BODY><H3>ERROR</H3>
<B>%s</B><P>
<FORM><INPUT TYPE=button VALUE=Back
ONCLICK="window.history.back()"></FORM>
</BODY></HTML>
'''

(2)列表

列表(List)和C语言数组差异较大,数组在定义的时候需要指明数组类型和数组需要分配的空间,而列表则不需要。列表仅需使用中括号表明这是一个列表即可,并且列表的成员可以是不同的数据类型,举例如下:

list=[1,'Hello world',2,[1,2,3,{'key1' : 1,'key2' : 2}]]
print(list)

运行结果如下:

Python语言基础课程考核目的及要求 python语言基础总结_python_04


此外,List如果需要添加和删除成员必须借助append()函数和del()函数来完成,举例如下:

list=[1,'Hello world',2,[1,2,3,{'key1' : 1,'key2' : 2}]]
print(list)
del list[1]
print(list)
list.append('Hello Python')
print(list)

运行结果如下:

Python语言基础课程考核目的及要求 python语言基础总结_字符串_05


最后,Python中的List和String一样支持+和*,效果和String一样,举例如下:

list1=['Hello']
list2=['Python']
print(list1+list2)
print(list1*3)

运行结果如下:

Python语言基础课程考核目的及要求 python语言基础总结_Python_06

(3)元组

元组(tuple)和列表高度相似,唯一不同之处在于元组的成员不允许修改,其他与列表基本一样。
另外值得一提的是如果是如下这样没有括号的多个元素赋值,默认就是元组

tup3 = "a", "b", "c", "d"   #  不需要括号也可以

(4)字典

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中 ,格式如下所示:

d = {key1 : value1, key2 : value2, key3 : value3 }

如果需要在字典添加内容的话,只需要在赋值操作中输入新的键即可,如下

tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
 
tinydict['Age'] = 8               # 更新 Age
tinydict['School'] = "菜鸟教程"  # 添加信息
 
 
print ("tinydict['Age']: ", tinydict['Age'])
print ("tinydict['School']: ", tinydict['School'])

(5)集合

集合(set)是一个无序的不重复元素序列。

1.可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

创建格式:

parame = {value01,value02,...}
或者
set(value)

2.添加元素可以使用s.add(x)方法和s.update(x),注意:update方法还可用以列表、元组、字典。

thisset = set(("Google", "Runoob", "Taobao"))
 thisset.add("Facebook")
 print(thisset)
{'Taobao', 'Facebook', 'Google', 'Runoob'}
thisset = set(("Google", "Runoob", "Taobao"))
 thisset.update({1,3})
 print(thisset)
{1, 3, 'Google', 'Taobao', 'Runoob'}
 thisset.update([1,4],[5,6])  
 print(thisset)
{1, 3, 4, 5, 6, 'Google', 'Taobao', 'Runoob'}

3.移除元素
语法格式如下:

s.remove( x )
将元素 x 从集合 s 中移除,如果元素不存在,则会发生错误。

thisset = set(("Google", "Runoob", "Taobao"))
 thisset.remove("Taobao")
 print(thisset)
{'Google', 'Runoob'}
 thisset.remove("Facebook")   # 不存在会发生错误
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'Facebook'

此外还有一个方法也是移除集合中的元素,且如果元素不存在,不会发生错误。格式如下所示:

s.discard( x )

thisset = set(("Google", "Runoob", "Taobao"))
 thisset.discard("Facebook")  # 不存在不会发生错误
 print(thisset)
{'Taobao', 'Google', 'Runoob'}

4.最后提一下,len(s)可以计算集合长度,s.clear()可以清空集合,x in s可以判断x是否在集合中。