一、建议安装anconda,自带很多库,不用自己再去下载
https://www.anaconda.com/download/
二、PyCharm 做为IDE环境,可以自行到官网下载社区版自用,免费
三、变量
不申明类型,直接使用,赋值是什么类型,变量就是什么类型。
变量采用 “ _ ” 连接符,例:student_name,(不像java中使用驼峰命名)
基于python没定义类型,建议一个变量就做一种数据类型使用,否则会给代码以后的调试带来大问题
我们也可以使用type()方法来判断返回变量的类型,做调试用
str() int() float() 可以转换数据类型
四、Python 数据类型 常用数据类型 类型 例子 整数 -100 浮点数 3.1416 字符串 'hello' 列表 [1, 1.2, 'hello'] 字典 {'dogs': 5, 'pigs': 3} Numpy数组 array([1, 2, 3]) 其他类型 Others 类型 例子 长整型 1000000000000L 布尔型 True, False 元组 ('ring', 1000) 集合 {1, 2, 3} Pandas类型 DataFrame, Series 自定义 Object Oriented Classes
五、其它说明
1.方法没有{}这是跟其它语言完全不同的 2.布尔采用 True,False,跟 java是不同的
3.Python 使用一对 """ """ 引号里面可以加入换行,和特殊字符
例如:
str2 = """我说:三个引号可以加入多种字符%&*(
'你快点来'"""
4.字符串与其它类型数据拼接,要使用占位符,不然运行错误
例:a_str1 = "我测试"
a_int = 15
a_float = 1.78
str3 = "%s:他告诉我说:他%d岁了,身高:%f米" % (a_str1, a_int, a_float)
print(str3)
输出结果:我测试:他告诉我说:他15岁了,身高:1.18米
六、案例说明:
没有{},代码对齐很重要,python靠缩进来控制代码层级 不然编译不通过
1.if 使用案例:
score = 75
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")
print("end if")
2.while 循环
x = 4
while x <= 15:
print(x, end=' ')
x += 1
print("\nend while")
3.for 循环
for y in range(4, 16):
print(y, end=" ")
print("\nend for")
for y in range(16):
print(y, end=" ")
print("\nend for2")
练习专用
# 打印直角三角形
# *
# * *
# * * *
n0 = 4
for x in range(n0):
for y in range(0, x + 1):
print("*", end=" ")
print()
print()
# 打印等边三角形
# *
# * *
# * * *
n = 4
for line in range(n):
for space_count in range(n - line - 1):
print(" ", end='')
for start in range(line + 1):
print("*", end=" ")
print()
# 打印100以内的偶数
for b in range(100):
if b % 2 == 1:
continue
print(b, end=" ")
print("\n")
flag = False
for a in range(10):
if flag is True:
break
for b in range(a):
if b == 7:
flag = True
break
print(b, end=" ")
print()
4.列表,元祖
list = [1, 1.0, "马云"]
# 直接打印list
print(list)
# 遍历打印list
for item in list:
print(item, end=' ')
# 空行
print()
# 下标遍历取值,然后打印
for index in range(len(list)):
print(list[index], end=' ')
# 空行
print()
# 测试列表list的下标,正方向数是0--> 2,返方向是-1 --> -3 这个可以测试下
# 打印-3,-1下标的值
print(list[-3], end=' ')
print(list[-1], end=' \n')
# 打印0,2下标的值
print(list[0], end=' ')
print(list[2], end=' \n')
# 删除第二个list元素
del (list[1])
print(list)
# 末尾插入下个值
list.append("test")
print(list)
# 在下标为1的位置插入
list.insert(1, "234")
print(list)
# 在下标为0的位置插入
list.insert(0, "哥哥")
print(list)
# 删除下标为2-3的值,记着口诀,[ : ) 包头不包尾,java中subString()也是这样
del (list[2:4])
print(list)
# 元祖,是一种不能不能改变值的特殊列表
tuple_test = (2, 3.56, "我")
test = tuple_test
print("tuple_test的值 是:" + str(tuple_test))
# 这里不要改变的值,而是对象变了
tuple_test = tuple_test[:2]
print("tuple_test的值 是:" + str(tuple_test))
print("tuple_test的值 是:" + str(test))
5.字典,这里的字典,跟java 中 hasmap差不多
dict_test = {"key1": "刘冬奎", "key2": "妹妹", "key3": {"阿里": "马云", "腾讯": "马化腾"}, "key4": "任正非"}
print(dict_test.get("key1"))
print(dict_test.get("key2"))
print(dict_test.get("key3"))
print(dict_test.get("key3").get("腾讯"))
print()
for key, value in dict_test.items():
print(key + ":" + str(value))
key = "key10"
if key in dict_test:
print(dict_test[key])
else:
print(key + ":不存在")
6.函数的使用
说明:yeild 是python特有的,可以通过查询,获得集合
# 打印等边三角形
# *
# * *
# * * *
# * * * *
# n是打印的行数,返回值count是星星的个数
def print_triangle(n=4):
count = 0
for line in range(n):
for space_count in range(n - line - 1):
print(" ", end='')
for start in range(line + 1):
print("*", end=" ")
count += 1
print()
return count
# 获得偶数,用生成器yield返回一个集合
def get_even(n):
for i in range(n):
if i % 2 == 0:
yield i
# lambda 表达式,简化函数代码
sum1 = lambda arg1, arg2: arg1 + arg2
def sum2(arg3, arg4):
return arg3 + arg4
for item in get_even(20):
print(item)
print(print_triangle())
print(sum1(10, 12))
print(sum2(10, 12))
7.类的使用
class ExampleClass:
# 类变量
val1 = 100
# 构造函数
def __init__(self):
# 成员变量
self.val2 = 200
print("_init_")
# 类方法
# 第一个参数必须是self
def func1(self):
# 局部变量
val4 = 300
# 实例变量
self.val3 = 400
class ExampleChildClass(ExampleClass):
def func2(self):
self.func1()
self.func2()
本人python初学,欢迎各位大神留言批评指教,谢谢
|