一、Python基础语法
1、标识符命名定义规范:
(1)、第一个字符必须是字母表中字母或下划线 _ 。
(2)、标识符的其他的部分由字母、数字和下划线组成。
(3)、不能用关键字命名(比如: ‘False’, ‘None’, ‘True’ ),最新关键字可通过下面操作查看
import keyword
print(keyword.kwlist)
建议:以小写字母开头,2个单词用下划线做分割如 test_two
2、注释:
(1)、 单行注释:在想要注释语句前加“#”号,例子如下:
print (“Hello, Python!”) # 单行注释
(2)、多行注释:在想要注释的语句组前后加3个引号,例子如下:
"""
多行注释一
多行注释二
"""
3、行与缩进 : python与其他语言最大的区别之处
规范:建议子层级缩进4个空格(也有用制表符做缩进的,不建议),例如下面例子,if做缩进表示嵌套在for循环里面
for i in range(5):
if True:
print(“True”)
else:
print(“False”)
4、多行语句:一行语句很长,我们可以使用反斜杠()来实现多行语句
too_much = “aaaaaaaaaaaaaaaa”+
“bbbbbbbbbbbbbb”
注意:在 [], {}, 或 () 中的多行语句,不需要使用反斜杠()
二、Python基础数据类型
1、数字类型:
int (整数):如 10, 只有一种整数类型 int,表示为长整型,没有 Long类型
bool (布尔):如 True,False
float (浮点数):如 1.23
2、String(字符串):
(1)、单号语句用双引号(或单引号表示),如下
str1 = “第一个字符串” 或 str1 = ‘第一个字符串
(2)、多行语句可以用三引号或反斜杠()
Str2 = “””
多行字符串第一行
多行字符串第二行
“”“
(3)、字符串中存在反斜杠,使用r可以让反斜杠不发生转义
Str3 = r"this is a line with “
(4)、“+”号在多个字符串中表示连接,“*”号在多个字符串中表示重复次数
Str4 = “aaa”+”bbb”
Str5 = “aaa”* 2
3、List(列表):
(1)、列表是写在方括号([])之间、用逗号分隔开的元素列表
(2)、列表可以被索引和截取,索引值以 0 为开始值,-1 为从末尾的开始位置
list = [ 'abcd', 786 , 2.23, ‘test', 70.2 ]
tinylist = [123, ‘hello']
print (list) # 输出完整列表
print (list[0]) # 输出列表第一个元素
print (list[1:3]) # 从第二个开始输出到第三个元素
print (list[2:]) # 输出从第三个元素开始的所有元素
print (tinylist * 2) # 输出两次列表
print (list + tinylist) # 连接列表
4、Tuple(元组):
(1)、元组(tuple)与列表类似,不同之处在于元组的元素不能修改
(2)、元组写在小括号 () 里,元素之间用逗号隔开。
tuple = ( 'abcd', 786 , 2.23, ‘test', 70.2 )
tinytuple = (123, ‘test')
print (tuple) # 输出完整元组
print (tuple[0]) # 输出元组的第一个元素
print (tuple[1:3]) # 输出从第二个元素开始到第三个元素
print (tuple[2:]) # 输出从第三个元素开始的所有元素
print (tinytuple * 2) # 输出两次元组
print (tuple + tinytuple) # 连接元组
5、Dictionary(字典):
(1)、字典是一种映射类型,字典用"{ }"标识,它是一个无序的键(key) : 值(value)对集合
(2)、在同一个字典中,键(key)必须是唯一的
dict = {}
dict[‘one’] = “第一个"
dict[2] = “第二个"
tinydict = {‘name’: ‘百度','code':1, 'site': 'www.baidu.com'}
print (dict['one']) # 输出键为 'one' 的值
print (dict[2]) # 输出键为 2 的值
print (tinydict) # 输出完整的字典
print (tinydict.keys()) # 输出所有键
print (tinydict.values()) # 输出所有值
6、常用类型转换表:
int(x) |
将x转换为一个整数 |
float(x) |
将x转换到一个浮点数 |
str(x) |
将对象 x 转换为字符串 |
chr(x) |
将一个整数转换为一个字符 |
list(x) |
将序列 s 转换为一个列表 |
tuple(x) |
将序列 s 转换为一个元祖 |
‘’.join(x) |
将一个列表转化为字符串 |
三、运算符:
1、算数运算符
+ |
两个对象相加 |
- |
一个数减去另一个数 |
* |
两个数相乘或是返回一个被重复若干次的字符串 |
/ |
一个数除于另一个数 |
// |
取整除部分 |
% |
取余部分 |
** |
返回x的y次方幂 |
2、比较运算符
== |
等于 |
!= |
不等于 |
> |
大于 |
< |
小于 |
>= |
大于等于 |
<= |
小于等于 |
3、逻辑运算符
and |
x and y |
布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 |
or |
x or y |
布尔"或" - 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。 |
not |
not x |
布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True |
注意点:短路问题
x and y, x如果为False,不会执行y
x or y, x如果为True,不会执行y
4、成员运算符
in |
如果在指定的序列中找到值返回 True,否则返回 False |
not in |
如果在指定的序列中没有找到值返回 True,否则返回 False。 |
举例:
x = 3
list = [1,2,3,4,5]
if x in list:
print("x in list")
else:
print("x not in list")
四、条件语句
If语法:if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3
举例如下
age = int(input(“请输入你家狗狗的年龄: ”))
if age < 0:
print(“你是在逗我吧!”)
elif age == 1:
print(“少年”)
elif age == 2:
print(“青年”)
elif age > 2:
print(“老年人”)
else:
print(“0.0")
小知识:if后面只有跟False,None和0 这3种情况才会认为判断错误
五、循环语句
1、while循环:
语法--while 判断条件:语句
举例如下
n = int(input(“累加到几: "))
sum = 0 ;counter = 1
while counter <= n:
sum = sum + counter
counter += 1
print("1 到 %d 之和为: %d" % (n,sum))
while结合else举例:
count = 0
while count < 5:
print (count, " 小于 5")
count = count + 1
else:
print (count, " 大于或等于 5")
2、for循环:
语法--for <variable> in <sequence>:
<statements>
举例如下:
for i in range(5): #range()函数。它会生成数列
print (i)
for i in range(5, 9): #range ()函数,可以指定区间
print (i)
for i in range(0, 10, 3) : range ()函数,可以指定数字开始并指定不同的增量
print(i)
结合else参考while循环
break与continue关键字:break跳出循环体,continue跳出当前循环
for i in range(5): #range()函数。它会生成数列
if i == 2:
break(或者continue)
print (i)
六、练习题
1、以下哪些是正确的标识符()
A、$customer_info B、 customer_info C、break D、_customer_info
E、1_customer_info F、Customer_1_info
2、求下列程序运行结果
list = [‘a’, ’b’, ‘c’, ‘d’, ‘e’]
print (list[1:3])
print(list[-3:])
3、求下列计算结果
13/3 == ?
13//3 == ?
13%3 == ?
4、以下语句控制台会打印什么:
def add_element(list, element):
list.append(element)
return list
list = [1,2]
if False and add_element(list, 3):
print(list)
else:
print(list)
5、通过if语句完成下列要求:
当成绩为 90分及以上输出A,[80,90)为输出B,[60,80)为C,60以下为D
6、以下程序执行得到j的结果:
j=0
for i in range(5):
if i == 2:
break
j += i
7、以下程序执行得到j的结果:
j=0
for i in range(5):
if i == 2:
continue
j += i
8、已知list = [‘Google’, ‘Baidu’, ‘Runoob‘],期望通过for循环得到
dict = {0:”Google”, 1:”Baidu”, 2:’Runoob’}
9、通过for循环得到my_str标识符为a-z的字符串(abcdefg…z)
习题答案:
1、BDF
2、[‘b’, ‘c’]
[‘c’, ‘d’, ‘e’]
3、 4.3333333333
4
1
4、[1, 2]
5、--------------------------------------
score = int(input("score: "))
if score >= 90:
print("A")
elif score >= 80:
print("B")
elif score >= 60:
print("C")
else:
print("D")
6、1
7、8
8、--------------------------------------
list = ['Google', 'Baidu', 'Runoob']
dict = {}
for i in range(len(list)):
dict[i] = list[i]
print(dict)
9、----------------
str = ""
for i in range(97,123):
str = str + chr(i)
print(str)