Python允许你同时为多个变量赋值。例如:
a = b = c = 1
以上实例,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上。
也可以为多个对象指定多个变量。例如:
a, b, c = 1, 2, "john"
以上实例,两个整型对象1和2的分配给变量a和b,字符串对象"john"分配给变量c。
在内存中存储的数据可以有多种类型。例如,一个人的年龄可以用数字来存储,他的名字可以用字符来存储。 Python 定义了一些标准类型,用于存储各种类型的数据。 Python有五个标准的数据类型:
数字数据类型用于存储数值。 他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象。 当你指定一个值时,Number对象就会被创建. Python支持四种不同的数字类型:
例:求从1到100的数字中所有既能被3整除,又能被5整除的数字有哪些?
LsNum = []
for i in range(1,101):
if i%3 == 0 and i%5 == 0 :
LsNum.append(i)
print(LsNum)
[15, 30, 45, 60, 75, 90]
字符串或串(String)是由数字、字母、下划线组成的一串字符。一般记为 :
s = "a1a2···an" # n>=0
例:输入一个字符串,把字符串拆分成两个等分 如果字符串长度是偶数,前一半和后一半的长度是相同的 如果字符串长度是奇数,则多出的一个字符加到前一半,如:'abcde',前一半是'abc',后一半是'de'
StrInput = input("请输入字符串:")
StrLength = len(StrInput)
if StrLength % 2 == 0:
StrMid = int(StrLength/2)
StrA = StrInput[:StrMid]
StrB = StrInput[StrMid:]
else: #5
StrMid = int((StrLength-1)/2) + 1
StrA = StrInput[:StrMid]
StrB = StrInput[StrMid:]
print(StrA,StrB)
请输入字符串:aaabbb aaa bbb
List(列表) 是 Python 中使用最频繁的数据类型。
列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。
列表是写在方括号 [] 之间、用逗号分隔开的元素列表。
和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。
列表截取的语法格式如下:
变量[头下标:尾下标]
索引值以 0 为开始值,-1 为从末尾的开始位置。
round=[]
round=[1,2,3,4,5]
print(round[1])
round[4]=76
2
print(round[2:5])
[3, 4, 76]
yy=round
yy[0]=23
print(round)
print(yy)
from copy import deepcopy
yy=deepcopy(round)
yy[0]=27
print(yy)
print(round)
[23, 2, 3, 4, 76] [23, 2, 3, 4, 76] [27, 2, 3, 4, 76] [23, 2, 3, 4, 76]
yy=yy+round
print(yy)
yy=yy+[100]
print(yy)
[27, 2, 3, 4, 76, 23, 2, 3, 4, 76] [27, 2, 3, 4, 76, 23, 2, 3, 4, 76, 100]
yy.append(1)
print(yy)
yy=yy+[2]
print(yy)
yy.remove(2)
print(yy)
#yy=yy-[3]
[27, 3, 4, 76, 23, 3, 4, 76, 100, 1, 1, 1, 1, 2, 1, 2, 1] [27, 3, 4, 76, 23, 3, 4, 76, 100, 1, 1, 1, 1, 2, 1, 2, 1, 2] [27, 3, 4, 76, 23, 3, 4, 76, 100, 1, 1, 1, 1, 1, 2, 1, 2]
yy.sort()
yy
[1, 1, 1, 1, 1, 1, 2, 2, 3, 3, 4, 4, 23, 27, 76, 76, 100]
元组是另一个数据类型,类似于 List(列表)。 元组用 () 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。
my_points=[(1,1),(2,2),(7,6)]
point1=(3,4)
point2=(7,6)
print(point1 in my_points)
print(point2 in my_points)
False True
字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。
两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过下标存取。
字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值 key:value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式如下所示:
d = {key1 : value1, key2 : value2 }
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字。
一个简单的字典实例:
tinydict = {'name': 'runoob', 'likes': 123, 'url': 'www.runoob.com'}
把相应的键放入到方括号中,如下实例:
tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
print ("tinydict['Name']: ", tinydict['Name'])
print ("tinydict['Age']: ", tinydict['Age'])
tinydict['Name']: Runoob tinydict['Age']: 7
向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例:
tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
tinydict['Age'] = 8 # 更新 Age
tinydict['School'] = "NUAA" # 添加信息
print ("tinydict['Age']: ", tinydict['Age'])
print ("tinydict['School']: ", tinydict['School'])
tinydict['Age']: 8 tinydict['School']: NUAA
tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
del tinydict['Name'] # 删除键 'Name'
tinydict.clear() # 清空字典
del tinydict # 删除字典
print ("tinydict['Age']: ", tinydict['Age'])
print ("tinydict['School']: ", tinydict['School'])
--------------------------------------------------------------------------- NameError Traceback (most recent call last) <ipython-input-5-2c5a70ab0a01> in <module> 5 del tinydict # 删除字典 6 ----> 7 print ("tinydict['Age']: ", tinydict['Age']) 8 print ("tinydict['School']: ", tinydict['School']) NameError: name 'tinydict' is not defined
list_key=['a','b','c','d','e']
list_values=[88,77,66,35,76]
#要找出e对应的值
for i in range(len(list_key)):
if list_key[i]=='e':
break;
print(list_values[i])
dic={'a':88,'b':77,'c':66,'d':35,'e':76}
print(dic['e'])
练习:求两个数字之间的素数
for i in range(100,201):
is_prime=True
for j in range(2,i-1):
if i%j == 0:
is_prime=False
break
if is_prime==True:
print(i,'is a prime.')
101 is a prime. 103 is a prime. 107 is a prime. 109 is a prime. 113 is a prime. 127 is a prime. 131 is a prime. 137 is a prime. 139 is a prime. 149 is a prime. 151 is a prime. 157 is a prime. 163 is a prime. 167 is a prime. 173 is a prime. 179 is a prime. 181 is a prime. 191 is a prime. 193 is a prime. 197 is a prime. 199 is a prime.
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。 函数能提高应用的模块性,和代码的重复利用率
def is_prime(n):
for i in range(2,n-1):
if n%i==0:
return False
return True
for i in range(100,201):
if is_prime(i)==True:
print(i,'is a prime.')
101 is a prime. 103 is a prime. 107 is a prime. 109 is a prime. 113 is a prime. 127 is a prime. 131 is a prime. 137 is a prime. 139 is a prime. 149 is a prime. 151 is a prime. 157 is a prime. 163 is a prime. 167 is a prime. 173 is a prime. 179 is a prime. 181 is a prime. 191 is a prime. 193 is a prime. 197 is a prime. 199 is a prime.
Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。
模块让你能够有逻辑地组织你的 Python 代码段。
把相关的代码分配到一个模块里能让你的代码更好用,更易懂。
模块能定义函数,类和变量,模块里也能包含可执行的代码。