学习 python 1 - python 基础「半原创」


本文会带来什么

  1. 输入输出api
  2. 语法缩进介绍
  3. 字符串转义方式(不转义方式)
  4. 基本类型介绍
  5. 数据集合介绍(list,set,dict,tuple)

强烈建议用 pycharm,用了pycharm,webStorm,AndroidStudio,常用快捷键是一样一样的(选择 一套keymap

python 基础

1.print()

2.input(hint)

1
2
// 接受用户从电脑输入
name = input("please input your name");

3.Python的语法比较简单,采用缩进方式

以#开头的语句是注释,注释是给人看的,可以是任意内容,解释器会忽略掉注释。其他每一行都是一个语句,当语句以冒号:结尾时,缩进的语句视为代码块。

1
2
3
4
5
6
# print absolute value of an integer:
a = 100
if a >= 0:
print(a)
else:
print(-a)

4.字符串(转义)

转义字符\可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\表示的字符就是\

1
2
3
# --------------字符串(转义)
strongString = "i am \"jack\"";
print(strongString)

5.字符串(不转义)

如果字符串里面有很多字符都需要转义,就需要加很多\,为了简化,Python还允许用r’’表示’’内部的字符串默认不转义

1
2
3
### # --------------字符串(不转义)
strongString = r'i am "jack"';
print(strongString)

6.字符串换行(\n)

1
2
3
# --------------字符串换行(\n)
trongString = "i am \"jack\"\nwhat is your name";
print(strongString)

7.字符串换行(\n)

如果字符串内部有很多换行,用\n写在一行里不好阅读,为了简化,Python允许用’’’…’’’的格式表示多行内容

1
2
3
4
# --------------字符串换行('''''')
strongString = '''i am "jack"
what is your name'''

print(strongString)

8.布尔值

布尔值和布尔代数的表示完全一致,一个布尔值只有True、False两种值

1
2
3
4
# --------------布尔值
print(True)
print(False)
print(3 > 2)

9.and 运算符

类似于java 中的 &&

1
2
3
4
# --------------and 运算符
print(True and True)
print(True and False)
print(False and False)

10.or 运算符

类似于java 中的 ||

1
2
3
4
# --------------or 运算符
print(True or True)
print(True or False)
print(False or False)

11.not 运算符

类似于java 中的 !

1
2
3
# --------------not 运算符
print(not True)
print(not False)

12.空值

空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值.

1
2
# --------------空值
print(None)

13.小数除(/)

结果为浮点数,较精确,即使结果为整数也为浮点类型

1
2
3
# --------------小数除(/)
print(10 / 3)
print(10 / 2)

14.地板除(//)

结果永远都是整数

1
2
3
# --------------地板除(//)
print(10 // 3)
print(10 // 2)

15.占位符

有些时候,字符串里面的%是一个普通字符怎么办?这个时候就需要转义,用%%来表示一个%

1
2
3
#  --------------占位符
name = 'growth rate: %d %%' % 7
print("hi,%s,you age is %d" %("mick",3 ))

16.list相关

类似于 java 中list 和 Array 的特性集合

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#  --------------list相关
classMates = ['jack',"jim","lucy"]
print(classMates)
# 下标
print(classMates[0])
# 获得长度
print(len(classMates))
# -1 直接获取最后一个元素
print(classMates[-1])
# -2 直接获取最后一个元素(可以地推-n)
print(classMates[-2])
# append 在末尾增加元素
classMates.append("newOne")
print(classMates)
# insert 在制定位置插入元素
classMates.insert(0,"add one in 0")
print(classMates)
# pop 删除list末尾的元素
print("before pop classMate is:" ,classMates)
classMates.pop()
print("after pop classMate is:" ,classMates)
# pop(i) 删除l制定位置的元素
print("before pop(1) classMate is:" ,classMates)
classMates.pop(1)
print("after pop(1) classMate is:" ,classMates)
# 元素类型可以不同
differentElements=["jack",2]
print(differentElements)
# 一个list 中的元素可以包含另一个list
differentElements=["jack",2]
s = [4,differentElements]
# 空数组
differentElements=[]
print(differentElements)
print(len(differentElements))

17.tuple 相关

tuple和list非常类似,但是tuple一旦初始化就不能修改

1
2
3
4
5
6
7
8
#  --------------tuple 相关
# 另一种有序列表叫元组:tuple。tuple和list非常类似,但是tuple一旦初始化就不能修改
classmates = ('Michael', 'Bob', 'Tracy')
print(classmates)
# 定义空tuple
noneTuple = ()
print(noneTuple)
# tuple 中也可以包含list

18.if else

1
2
3
4
5
6
7
8
9
10
11
#  --------------if else
ageString = input("please input your age:")
ageInt = int(ageString)
if ageInt > 20:
print("your age is %d"%(ageInt))
print("you are to young")
elif ageInt > 15:
print("your age is ",ageInt)
print("you are so young to battle")
else:
print("go home")

19.for循环

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#  --------------for循环
names = ["mick","jack","lucy"]
for name in names:
print(name)
# -下一个练习--
sum = 0
numbers = [1,2,3,4,5,6]
for number in numbers:
sum += number
print(sum)
# -下一个练习--
sum = 0
for x in range(101):
sum = sum + x
print(sum)

20.while 循环

1
2
3
4
5
6
7
#  --------------while 循环
sum = 0
n = 99
while n > 0:
sum = sum + n
n = n - 2
print(sum)

21.dict

类似于 java 中的map

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#  --------------dict
# 类似于 map key : value
d = {"mick" : 3,"jack": 4}
print(d)
print(d.get("mick"))
# 查询某个key是否存在
print("jack" in d)
print("jacka" in d)
print(d.get("jack"))
print(d.get("jacks"))
# pop(key) 删除一个元素
print("before pop key :" ,d)
d.pop("jack")
print("after pop key :",d)

22.set

类似于 java 中的set

1
2
3
4
5
6
7
8
9
10
11
12
#  --------------set
# 定义set
s = set([1,2,3,4,])
print(s)
# add 元素
s.add(5)
s.add(4)
print(s)
# 交集并集
s2 = set([5,6,7])
print(s & s2)
print(s | s2)

参考